사용자를 나타내는 객체가 있고 해당 사용자의 주소에 액세스하려고 한다고 가정해 보겠습니다.
과거에는 다음과 같은 작업을 수행했을 수도 있습니다.
const user = { name: "Alice", address: { street: "123 Main St" } }; const street = user.address && user.address.street; console.log('Street: ', street); // Output: 123 Main St
그런데 사용자 개체에 주소 속성이 없거나 주소 개체에 거리 속성이 없으면 어떻게 되나요?
오류가 발생합니다!
이 연산자(?.)를 사용하면 중첩된 속성에 안전하게 액세스할 수 있으며 체인의 일부가 누락된 경우 정의되지 않은 값을 반환합니다.
예:
const user = { name: "Bob" }; const street = user.address?.street; console.log('Street: ', street); // Output: undefined
코드가 얼마나 깔끔하고 간결해졌는지 확인해보세요
기본값 수호자.
이제 변수가 null이거나 정의되지 않은 경우 변수에 기본값을 할당한다고 가정해 보겠습니다. 일반적으로 OR 연산자(||)를 사용합니다. 그러나 변수에 0과 같은 "거짓" 값이 있거나 빈 문자열이 있는 경우 예기치 않은 동작이 발생할 수 있습니다.
유용한 이유:
let userSettings = null; // Imagine this comes from an API or user input // Without nullish coalescing: let theme = userSettings !== null && userSettings !== undefined ? userSettings.theme : 'light'; // With nullish coalescing: let theme = userSettings?.theme ?? 'light'; // If userSettings.theme is null or undefined, 'light' is used
선택적 속성이나 잠재적으로 누락된 데이터를 처리할 때 특히 유용합니다.
선택적 연결 및 nullish 병합은 읽기 쉽고 강력하며 오류 방지 기능이 있는 코드를 작성하는 데 도움이 됩니다.
위 내용은 선택적 연결 및 Nullish Coalescing의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!