js에서 조건처리하는 방법을 배워보자.
true
일때 코드블록을 실행한다. if (year == 2015) {
alert( '정답입니다!' );
}
괄호의 조건문이 불린형이 아닐 때 형변환을 통해 평가한다.
falsy
: 0
, 빈 문자열"", null, undefined, NaN은 불린형으로 변환 시 모두 false가 된다.
truthy
: 문자열, 숫자등은 불린형으로 변환시 true가 된다.
if문엔 else 절을 붙일 수 있습니다. else 뒤에 이어지는 코드 블록은 조건이 거짓일 때 실행됩니다.
if (year == 2015) {
alert( '정답입니다!' );
} else {
alert( '오답입니다!' ); // 2015 이외의 값을 입력한 경우
}
if (year < 2015) {
alert( '숫자를 좀 더 올려보세요.' );
} else if (year > 2015) {
alert( '숫자를 좀 더 내려보세요.' );
} else {
alert( '정답입니다!' );
}
⚠️ if문 여러개와는 다르다.
let result = condition ? value1 : value2;
result
에는 condition
이 truthy라면 value1
이, 그렇지 않으면 value2
가 반환된다.
?
연산자는 우선순위가 낮아 조건문을 괄호로 감싸지 않아도 되지만 가독성을 위해서는 괄호사용이 좋다.)
?
?
를 여러개 사용할 수도 있다. let age = prompt('나이를 입력해주세요.', 18);
let message = (age < 3) ? '아기야 안녕?' :
(age < 18) ? '안녕!' :
(age < 100) ? '환영합니다!' :
'나이가 아주 많으시거나, 나이가 아닌 값을 입력 하셨군요!';
alert( message );
⚠️ 코드를 수행할 수도 있지만 이같은 경우는 if문이 더 가독성이 좋다.