const name = person?.name;
const age = person?.age?.years;
Nullish Coalescing (널 병합 연산자)
Nullish Coalescing은 변수가 null 또는 undefined일 때, 대체 값을 지정할 수 있는 방법입니다. 이전에는 || 연산자를 사용하여 처리했지만, 이는 falsy한 값 (0, '', false 등)도 대체 값으로 처리하는 문제점이 있었습니다. Nullish Coalescing은 이러한 문제를 해결했습니다. 다음과 같이 사용할 수 있습니다.
Promise.allSettled는 Promise.all과 유사하지만, 모든 Promise가 처리되었을 때, 각 Promise의 결과에 상관없이 Promise 객체를 반환합니다. 이는 모든 Promise의 결과를 필요로 하는 상황이 아니라, Promise 중 일부가 실패해도 처리할 수 있는 상황에서 유용합니다. 다음과 같이 사용할 수 있습니다.
Private Class Fields는 클래스 내부에서만 접근 가능한 private 변수를 생성하는 방법입니다. 이전에는 변수 앞에 '_'를 붙이는 방법으로 private 변수를 만들었지만, 이 방법은 실제로는 private이 아니었습니다. Private Class Fields는 다음과 같이 사용할 수 있습니다.
class Person {
#name;
constructor(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
Logical Assignment (논리 할당)
Logical Assignment은 변수에 값을 할당하면서, 조건식을 함께 사용할 수 있는 방법입니다. 다음과 같이 사용할 수 있습니다.