'물음표 연산자'라고 불리는 '조건부 연산자'를 활용하면 조건문을 짧은 문법으로 쓸 수 있다.
let accessAllowed;
let age = prompt('나이를 입력해 주세요.', '');
if (age > 18) {
accessAllowed = true;
} else {
accessAllowed = false;
}
// 위 코드를 아래 코드로 변경 가능
let accessAllowed = (age > 18) ? true : false;
// age > 18 자체가 true false 반환이 가능하기 때문에 아래 코드로 변경 가능
let accessAllowed = age > 18;
문법 : 평가대상인 condition이 참이면 value1 아니면 value2 반환
let result = condition ? value1 : value2;
다중 '?'
else~if 문도 물음표 연산자로 변경 가능하다.
let age = prompt('나이를 입력해주세요.', 18);
let message = (age < 3) ? '아기야 안녕?' :
(age < 18) ? '안녕!' :
(age < 100) ? '환영합니다!' :
'나이가 아주 많으시거나, 나이가 아닌 값을 입력 하셨군요!';
alert( message );
- 첫 번째 물음표에선 조건문 age < 3을 검사.
- 그 결과가 참이면 '아기야 안녕?'를 반환. 그렇지 않다면 첫 번째 콜론 ":"에 이어지는 조건문 age < 18을 검사.
- 그 결과가 참이면 '안녕!'를 반환. 그렇지 않다면 다음 콜론 ":"에 이어지는 조건문 age < 100을 검사.
- 그 결과가 참이면 '환영합니다!'를 반환. 그렇지 않다면 마지막 콜론 ":" 이후의 표현식인 '나이가 아주 많으시거나, 나이가 아닌 값을 입력 하셨군요!'를 반환.
'JavaScript' 카테고리의 다른 글
[JaveScript] nullish 병합 연산자 '??' (0) | 2022.04.23 |
---|---|
[JavaScript] 논리 연산자 (0) | 2022.04.23 |
[JavaScript] 연산자 (0) | 2022.04.23 |
[JavaScript] 형변환 (0) | 2022.04.23 |
[JavaScript] 사용자와 상호작용할 수 있는 함수 / alert, prompt, confirm (0) | 2022.04.23 |