반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- ExpressJS
- jest.config.mjs
- mysql
- Passport
- react-router-dom
- Switch 사용불가
- nunjucks
- nodejs
- sequelize
- Glob Pattern
- typescript
- Board
- JEST
Archives
- Today
- Total
게으른 나르의 코딩
[JavaScript] 옵셔널 체이닝 연산자 & null 병합 연산자 본문
반응형
옵셔널 체이닝 연산자
ES11에서 도입된 옵셔널 체이닝 연산자 ?. 는 좌항의 피연산자가 null 또는 undefined인 경우 undefined를 반환하고, 그렇지 않으면 우항의 프로퍼티 참조를 이어간다.
옵셔널 체이닝을 사용하는 이유는 Falsy 값 중에 0 이나 '' 이 객체로 평가될 때도 있기 때문에 더 명확하게 연산하기 위해 나온 연산자이다.
// 연산곱을 활용한 단축평가
var s = '';
var length = str && str.length;
console.log(length); // ''
//옵셔널 체이닝을 활용한 단축평가
var s= '';
var length = str?.length;
console.log(length); // 0
null 병합 연산자
ES11에서 도입된 null 병합 연산자 ??는 좌항의 피연산자가 null 또는 undefined인 경우 우항의 피연산자를 반환하고, 그렇지 않으면 좌항의 피연산자를 반환한다. 기본값을 설정할 때 유용하다.
// 연산합을 활용한 단축평가
var s = '' || 'default';
console.log(s); // 'default'
//null 병합 연산자를 활용한 단축평가
var s = '' ?? 'default';
console.log(s); // ''
반응형
'Languages > JavaScript' 카테고리의 다른 글
[JavaScript] 원시 값과 객체의 비교 (2) | 2022.06.05 |
---|---|
[JavaScript] 객체 리터럴 (0) | 2022.06.03 |
[JavaScript] 타입 변환과 단축 평가 (0) | 2022.05.26 |
[JavaScript] 제어문 (0) | 2022.05.26 |
[JavaScript] 연산자 우선순위 (0) | 2022.05.25 |
Comments