반응형
if문
if(...) 조건식의 결과가 true이면 코드블록실행
let year = prompt('ECMAScript-2015 명세는 몇 년도에 출판되었을까요?', '');
if (year == 2015) alert( '정답입니다!' );
- 조건식이 true일 때 복수의 문을 실행한다면 중괄호로 코드 블록을 감싸야한다.
if (year == 2015) {
alert( "정답입니다!" );
alert( "아주 똑똑하시네요!" );
}
- 구문이 한 줄이더라도 가독성을 위해 코드 블록으로 감싸는것을 권장
불린형으로 변환
if (...) 문은 괄호 안의 표현식을 평가하고 그 결과를 불린값으로 변환한다.
- 숫자 0, 빈문자열"", null, undefined, NaN은 불린형으로 변환 시 모두 false
'else'절
if문엔 else절을 붙일 수 있따. else 뒤에 이어지는 코드 블록은 조건이 거짓일때 실행된다.
let year = prompt('ECMAScript-2015 명세는 몇 년도에 출판되었을까요?', '');
if (year == 2015) {
alert( '정답입니다!' );
} else {
alert( '오답입니다!' ); // 2015 이외의 값을 입력한 경우
}
'else if'로 복수 조건 처리하기
여러개의 조건을 처리해야할때 사용할 수 있다.
let year = prompt('ECMAScript-2015 명세는 몇 년도에 출판되었을까요?', '');
if (year < 2015) {
alert( '숫자를 좀 더 올려보세요.' );
} else if (year > 2015) {
alert( '숫자를 좀 더 내려보세요.' );
} else {
alert( '정답입니다!' );
}
- 마지막에 else는 필수가 아닌 선택사항이다.
조건부 연산자 '?'
피연산자가 3개인 조건부 연산자 '?'는 삼항연산자라고 부르기도 한다.
let result = condition ? value1 : value2;
- condition이 참이면 value1, 거짓이면 value2
다중 '?'
물음표 연산자 ? 를 여러개 연결하면 복수의 조건을 처리할 수 있다.
let age = prompt('나이를 입력해주세요.', 18);
let message = (age < 3) ? '아기야 안녕?' :
(age < 18) ? '안녕!' :
(age < 100) ? '환영합니다!' :
'나이가 아주 많으시거나, 나이가 아닌 값을 입력 하셨군요!';
alert( message );
- 헷갈려 보이지만 참이면 옆에 코드 실행, 거짓이면 아래 코드실행 한줄씩 차근차근 보면 된다.
반응형