let year = prompt('ECMAScript - 2015 명세는 몇 년도 출판?','');
if (year ==2015){
alert("정답");
alert("아주똑똑");
}
if 문을 쓸 때는 조건이 참일 경우 실행되는 구문이 단 한줄이더라도 중괄호를 사용해 코드를 블록을 감싸자 !
if(0){
...
} // 절대 실행 X, falsy
if(1){
...
} //항상 실행, truthy
let year prompt('ECMAScript-2015 명세는 몇 년도 출판?','');
if(year==2015){
alert('정답!');
}else{
alert('오답!');
}
else 뒤에 이어지는 코드블록은 조건이 거짓일 때 실행.
let year prompt('ECMAScript-2015 명세는 몇 년도 출판?','');
if(year==2015){
alert('정답!');
}else if(year>2015){
alert('숫자를 좀 더 내려보세요');
}else{
alert('정답!');
}
마지막에 붙은 else는 필수가 아닌 선택.
let result = condition ? value1 : value2;
평가대상인 condition이 truthy라면 value1이, 그렇지 않다면 value2가 반환.
//연산자 우선순위 규칙에 따라, 비교연산 'age > 18'이 먼저 실행.
//조건문을 괄호로 감쌀 필요 X.
let accessAllowed = age > 18 ? true : false;
//사실 비교연산잔 자체가 true나 false를 반환하기 떄문에 위 예시에서 물음표 연산자를 사용하지 않아도 된다.
let accessAllowed = age > 18;
let age = prompt('나이를 입력해주세요',18);
let message = (age < 3) ? '애기 안뇽?':
(age < 18)? '안녕':
(age < 100) ? '환영합니다':
'나이가 아주 많으시거나, 나이가 아닌 값을 입력하셨군요!;
alert (message);
let company = prompt('자바스크립트는 어떤 회사가 만들었을까요?','');
(company == 'Netscape')?
alert('정답') : alert ('오답');
개발자의 입장에선 if문을 사용할 때 보다 코드길이가 짧아진다는 점 때문에 ?를 if대용으로 쓰는 게 매력적일순 있지만 가독성이 떨어짐.