728x90
a ?? b
// a 가 null 이거나 undefined 가 아니면 a
// 그게 아니면 b
let height = 0;
alert(height || 100); // 100
alert(height ?? 100); // 0
let x = 1 && 2 ?? 3; // SyntaxError: Unexpected token '??'
let x = (1 && 2) ?? 3; // 괄호를 사용할 것
alert(x); // 2
- ??의 연산자 우선순위는 대다수의 연산자보다 낮고 ?와 = 보다는 높다.
- 괄호 없이 ??를 ||나 &&와 함께 사용하지 말 것.
728x90
'Web > JavaScript' 카테고리의 다른 글
[기본] block level scope (const, let) (0) | 2023.10.27 |
---|---|
[기본] garbage collection (0) | 2023.10.26 |
[Function Declaration] 함수표현식, 콜백함수 (0) | 2023.10.25 |
[기본] type of 및 자료형 요약정리 (0) | 2023.10.23 |
[기본] 자료형 - 객체 (1) | 2023.10.23 |