Life is not fair; get used to it.
문제 4: 변수의 타입2
다음 변수 a를 typeof(a)로 넣었을 때 출력될 값과의 연결이 알맞지 않은 것은?
1) 입력 : a =1, 출력 : number
2) 입력 : a = 2.22, 출력 : boolean
3) 입력 : a = 'p', 출력 : string
4) 입력 : a = [1, 2, 3], 출력 : object
풀이) 2번이 답이다. Boolean에 해당하는 값은 'true' or 'false'가 있다.
문제 5: for문 계산
다음 코드의 출력 값은?
var a = 10;
var b = 2;
for(var i=1; i<5; i+=2){
a += i;
}
console.log(a+b);
풀이) for 반복문: 값의 누적과 조건의 순회를 알자
기본 공식의 시작인 i = 1; 일 때를 먼저 생각해보자.
i < 5; 가 성립되므로, a += 1; (a = a + 1)가 실행된다.
즉, a = 10 + 1; 이다.
첫 번째 순회에서 a = 11; 의 값이 정의된 상태다.
a = 11; 인 상태에서 2번째 순회
i += 2; 로, i값은 2씩 증가하므로 두 번째 순회는 i = 3; 의 값을 갖는다.
i < 5; 가 성립되므로, a += 3; (a = a + 3)가 실행된다.
첫 번째 순회에서 a = 11;의 값으로 정의된 상태이므로, a = 11 + 3; 이다
a = 14; 인 상태에서 3번째 순회
i += 2; 로 i값이 2 증가, 세 번째 순회는 i = 5; 의 값을 갖는다.
i < 5; 가 성립되지 않는다!
즉, 실행되지 않는다.
마지막으로 정의된 값인 a = 14; 의 값을 갖는다.
console.log(a + b); 에서 a = 14, b = 2 이다.
console.log(14 + 2);
답) 16
문제 6: False
다음은 자바스크립트 문법 중에서 False로 취급하는 것들 중 True를 찾아주세요.
1) NaN
2) 1
3) ""
4) 0
5) undefined
풀이) true는 '1'의 값을 갖는다!
'비교 연산자' 중 하나인 '동등 연산자(==)'를 활용하자.
'동등 연산자'는 비교 하는 두 값이 서로 같으면 'true'을 반환한다.
이때 두 값의 타입이 같지 않아도 'true'를 반환한다!
이와 조금은 다르게, '일치 연산자(===)'는
두 값이 서로 일치하고, 타입도 같아야만 'true'를 반환한다.
각 문제에 '== true'를 적어, 그 값을 확인한다.
'true'값이 출력 된다면, 답을 찾은 것이다.
답) 2번: 1
'Start JavaScript' 카테고리의 다른 글
JavaScript 문제풀이(16 ~ 18) (0) | 2021.12.08 |
---|---|
JavaScript 문제풀이(13 ~ 15) (0) | 2021.12.07 |
JavaScript 문제풀이(10 ~ 11) (0) | 2021.12.06 |
JavaScript 문제풀이(7 ~ 9) (0) | 2021.12.03 |
JavaScript 문제풀이(1 ~ 3) (0) | 2021.12.01 |