All'alba vincerò

At dawn, I will win!

Javascript

[JS] if문, 조건부 연산자 ?

나디아 Nadia 2024. 6. 1. 20:58

if 문

if ( 조건식 ) {
     ...
} else if (조건식) {
     ...
} else {

     ...
}

 

let year = prompt('ECMAScript-2015 명세는 몇 년도에 출판되었을까요?', '');


if (year < 2015) {
  alert( '숫자를 좀 더 올려보세요.' );
  
} else if (year > 2015) {
  alert( '숫자를 좀 더 내려보세요.' );
  
} else {
  alert( '정답입니다!' );
}

 

 

 

boolean형 사용

  • 0, 빈 문자열(""), null, nudefined, NaN 👉 false (falsy 값)
  • 이 외의 값 👉 true (truthy 값)
if (1) { // 1은 truthy입니다.
  ...
}


if (0) { // 0은 falsy입니다.
  ...
}

 

 


 

조건부 연산자 ?

: 조건식이 true면 (true일 때 실행), false면 (false일 때 실행)

조건식/변수 ? true 코드 : false 코드

 

let accessAllowed = age > 18 ? true : false;
// 연산자 우선 순위에 따라 'age > 18' 먼저 실행
// age가 18세 초과면 true, 18세 미만이면 false

 

 

 

다중 ?

let age = prompt('나이를 입력해주세요.', 18);

let message = (age < 3) ? '아기야 안녕?' :
  (age < 18) ? '안녕!' :
  (age < 100) ? '환영합니다!' :
  '나이가 아주 많으시거나, 나이가 아닌 값을 입력 하셨군요!';

alert( message );
  • (age < 3) - true: "아기야 안녕?" / false:  (age < 18) 실행
  • (age < 18) - true: "안녕!" / false:  (age < 100) 실행
  • (age < 100) - true: "환영합니다!" / false:  "나이가 아주 많거나 나이가 아닌 값을 입력했습니다." 

 


 

 

 

if와 '?'를 사용한 조건 처리

 

ko.javascript.info