오늘은 첫날인 만큼 프로필 작성을 주로 했고, 남은 시간은 모두 코드카타(정수제곱근 판별)를 하는 데에 사용했다. 이를 위해서 먼저 Git Book을 읽으며 문법 학습을 했는데, 아주 기초적인 것 외에 오늘의 코드카타 과제를 위해서 가장 먼저 읽어낸 것은 함수와 변수에 대한 것이었다.
함수 선언(function declaration), 지역 변수, 외부 변수, 매개 변수가 이것들인데
먼저 함수 선언은
function solution(n) {
var x=n/x
}
의 형식으로 이루어져 있으며, 함수를 만드는 데에 기본적으로 필요한 문법이다. 함수선언 function , 함수명 solution , 매개변수 (n) 까지가 헤더이고 이후 중괄호{ } 안에 들어가는 것이 바디이자 함수 본문이라고 부른다. 이러한 함수의 주요 용도는 중복 코드 피하기이다.
이러한 용도에 맞게 이후 내용에는 함수와 변수의 상호작용이 함수 안팎으로 어떻게 변화할 수 있는지를 다루었는데, 그 중 함수 안에 있는 변수가 밖에 영향을 끼치지 못하는 것이 바로 '지역변수'이다. 지역변수는 중괄호{ } 안에 들어가는 함수 본문의 일부로써 함수 내부에서만 의미를 가지는 변수이다. 이러한 변수는 함수 밖에서 같은 값을 불러오려고 중복코드를 작성해도 불러올 수 없고, 그렇기 때문에 함수 안과 같은 형식의 코드를 함수 밖에서 작성하여 다른 용도로 활용할 수 있다.
'외부변수'는 말 그대로 함수 외부의 변수이다. 이러한 변수는 하나의 함수에 한하지 않고 코드 내의 다른 함수들에게도 변수로써 사용될 수 있다. 이러한 변수는 '중복 코드 피하기'라는 용도에는 맞지 않다고 여길 수 있으나, 이러한 '외부변수'가 여러 함수에 필요한 경우 각 함수마다 지역변수를 입력하는 번거로움을 피할 수 있으니 '중복 코드 피하기'라는 역할에 맞을 것으로 보인다.
다음으로 매개 변수(n) 가 있다. 매개변수는 함수의 헤더에 포함되어 있는 만큼 알아보기가 쉽고, 때문에 어떤 형식으로 사용되는지도 이해하기 쉬웠다. 간단하게 계산기로 비유하자면 함수가 5*8=40에서 *을 뜻한다면 매개변수는 5와 8을 의미한다. 이러한 매개변수는 solution(n) , sum(int n)와 같이 함수 뒤에서 괄호로 구분되어 사용되며 함수를 호출할 때 solution(7) 과 같이 함수 뒤에 매개 변수와 매치되는 인수를 넣음으로써 함수를 간단하게 활용할 수 있게 한다.
오늘 내가 익힌 함수구조는 여기까지다. 이후에 익힌 것들은 코드카타(정수제곱근 판별)를 풀기 위해 구글링을 통해 익힌 함수 종류들로, 이것들을 나열하여 마무리하겠다.
var 변수
if((n == x*x)&&(Number.isInteger(x))) {
return((x+1)*(x+1));
} else {
return(-1);
}
if 조건문
== 비교연산자, 두 값을 비교해서 같으면 true 다르면 false 값을 리턴
=== 위보다 엄격한 비교연산자
&& 논리곱 양옆의 값이 모두 참(true)여야 참(true)을 반환한다
|| 논리합 양옆의 값 중 하나라도 참(true)이면 참(true)을 반환한다
**제곱근
Number.isInteger() 매개변수가 정수인 경우 참(true)을, 그렇지 않은 경우 거짓(false)을 반환한다.
if문 뒤에 붙는 else절 : if문이 거짓이었을 경우의 결과값을 정의한다.
return 결과값을 반환한다.
alert 문자를 반환한다.
'til' 카테고리의 다른 글
개발 아티클 스터디(2) (0) | 2024.06.21 |
---|---|
콘솔 적극 활용하기-강아지 편 (0) | 2024.06.20 |
Javascript 톺아보기 (0) | 2024.06.19 |
개발 아티클 스터디 (0) | 2024.06.18 |
TIL 개발 용어 정리 1~16번 (0) | 2024.06.17 |