자바스크립트의 선택적 연결(?.)
1628 단어 reactshowdevtutorialjavascript
?.
는 자바스크립트에서 연쇄 연산자로 알려져 있습니다. 이 연산자는 매우 유용하므로 이 기사를 읽은 후 바로 이 연산자를 사용하게 될 것입니다.이 선택적 연결 연산자는 무엇을 합니까?
?.
연산자는 .
연결 연산자와 유사하게 작동하지만 참조가 null인 경우(null 또는 undefined) 오류가 발생하는 대신 undefined 반환 값으로 표현식이 단락됩니다.좀 더 명확하게 이해할 수 있도록 몇 가지 세부 사항을 논의해 보겠습니다.
고려하다
const person = {
a: {
b: 'c'
}
};
시도하면 어떻게 될까요?
console.log(person.a.b)
??
당신이 맞습니다 ... 그것은 확실히 콘솔에 'c'를 인쇄 할 것입니다.
그러나 당신이 시도하면 어떻게 될까요?
console.log(person.d.e)
??
흠... 까다롭죠?? 전혀... 오류가 발생합니다.
Uncaught reference error: Cannot read property e of undefined.
'b'는 객체 'a'의 속성이 아니기 때문입니다. 여기 큰 질문이 있습니다.
존재하지 않는다는 것을 알고 있는 속성을 인쇄하려고 하는 이유는 무엇입니까?
대답은 매우 간단합니다. 곧 개체에 포함되지만 아직 사용할 수 없는 일부 데이터를 인쇄하려고 합니다(예: http 요청을 사용하여 데이터 가져오기). 일반적인 경우에 수행할 수 있는 작업은 값이 존재하는 경우에만 데이터를 인쇄하지만 선택적 연결 연산자를 사용하면 매우 간단해지도록 if else 조건을 적용하는 것입니다. 아래 참조
if (person.d) console.log(person.d.e)
VS
console.log(person.d.?e)
두 번째는 데이터를 가져오지 않아도 오류가 발생하지 않습니다. 정의되지 않은 상태로 인쇄됩니다.
말 그대로 js를 사랑한다면 정말 멋진 일입니다. 나는 항상 가능한 한 쉽게 개념을 가르치는 것을 좋아합니다.
읽어 주셔서 감사합니다
즐거운 자바스크립트....
Reference
이 문제에 관하여(자바스크립트의 선택적 연결(?.)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/harshvats2000/optional-chaining-in-javascript-3lg텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)