자바스크립트에서 || 문법은 아마 많이들 사용하고 계실 것입니다. 왼쪽에 있는 값이 거짓 값일 때(0, '', false, null, undefined) 오른쪽 값으로 설정하고자 할 때 많이 사용하는 문법입니다.
const age = 35;
console.log(age || 40); // 35
const age1 = ''
console.log(age1 || 40); // 40
const age2 = 0;
console.log(age2 || 40); // 40
const age3 = null;
console.log(age3 || 40); // 40
const age4 = undefined;
console.log(age4 || 40); // 40
그런데 ''와 0을 의도한 경우라면 || 연산자 대신 null과 undefined인 경우에만 기본값을 선택해주는 ?? 연산자를 사용하면 됩니다. Nullish Coalescing 연산자라고 불리는 ??는 ES11(2020년)에 도입되었습니다.
const age = 35;
console.log(age ?? 40); // 35
const age1 = ''
console.log(age1 ?? 40); // ''
const age2 = 0;
console.log(age2 ?? 40); // 0
const age3 = null;
console.log(age3 ?? 40); // 40
const age4 = undefined;
console.log(age4 ?? 40); // 40
정리하자면,
|| 연산자는 false 값일 때 기본값을, ??는 null 또는 undefined일 때 기본값을 반환합니다.
참고자료
[1] https://kir93.tistory.com/entry/Javascript-ES11-%EB%AC%B8%EB%B2%95%EC%A0%95%EB%A6%AC
'Dev > javascript' 카테고리의 다른 글
[javascript] 템플릿 리터럴로 문자열 내에 변수 쉽게 대입하기 (0) | 2024.08.30 |
---|---|
[javascript] ?. 옵셔널 체이닝(optional chaining)이란? (0) | 2024.08.14 |
[javascript] 배열을 잘라서 새로운 배열 객체로 만들어주는 slice() 메서드 (1) | 2024.08.05 |
[javascript] 크롬 브라우저 디버깅 단축키 정리 (0) | 2024.08.04 |
[javascript] 배열의 요소들을 합쳐서 문자열로 만들어주는 join() 메서드 (0) | 2024.07.23 |
[javascript] 배열에 요소 추가하는 메서드, push() (0) | 2024.07.22 |
[javascript] split() 메서드로 문자열을 지정한 구분자로 분리하여 배열 만들기 (0) | 2024.07.15 |
[javascript] 정규식(RegExp)으로 문자열내 반복되는 특정 단어 시작 인덱스 배열 생성하는 방법 (0) | 2024.07.14 |