Nullisth 병합할당 (??=) Nullish coalescing assignment

초록귤·2024년 9월 2일
0

JS

목록 보기
3/3

Nullish → null or undefined

  • ?? 와 || 차이
    • ||는 첫 번째 truthy값을 반환

    • ??는 첫 번째 정의된(defined)값을 반환

    • ??는 0이 할당될 수 있는 변수 사용해 기능개발 시 적합

      let height =0;
      
      alert( height || 100 ); //100
      alert( height ?? 100 ); // 0
    • 안정성관련 이슈때문에 ??는 &&나 ||와 함께 사용하지 못한다. 제약을 피하려면 괄호를 사용해야한다

      // SyntaxError: Unexpected token '??'
      let x = 1 && 2 ?? 3; 
      
      // 제대로 동작한다
      let x = (1 && 2) ?? 3;

coalescing: 큰 덩어리로 합치다.

널 병합 할당 연산자 ( ??= ) 는 논리적 널 할당 연산자라고도 하며 오른쪽 피연산자만 평가하고 왼쪽 피연산자가 널인 경우 (null 또는 undefined)왼쪽에 할당

const a = {duration: 50}
a.speed ?? = 25;
console.log(a.speed);
// Expected output: 25

a.duration ??=10;
console.log(a.duration);
// Expected output: 50 
profile
초록색 귤이 노랑색으로 익어가듯, 실력이 익어가기 위해 노력하는 개발자 lahee입니다.

0개의 댓글