선택 사항?.체인화 🤩 - 개발자를 위한 훌륭한 선물
3849 단어 reactjavascriptnode
if(
person && person.education &&
person.education.highSchool &&
person.education.highSchool.mark &&
person.education.highSchool.mark.maths
) {
console.log('😭');
}
괜찮아! 왜 우리는 이렇게 맞아야 합니까? 왜냐하면
undefined
에 대한 각 키의 유효성을 검사하지 않으면 오류가 발생하고 프로그램이 충돌할 가능성이 크기 때문입니다! 이를 방지하려면 undefined
에 대한 모든 키 값의 유효성을 검사해야 합니다!그렇지 않으면 다음 오류 중 하나가 발생할 수 있습니다.
Error: cannot read property education of undefined
Error: cannot read property highSchool of undefined
Error: cannot read property mark of undefined
Error: cannot read property maths of undefined
또한 이러한 오류는
undefined
뿐만 아니라 null
값에서도 발생할 수 있습니다.깊이가 4 이상인 객체가 중첩되면 어려울 수 있습니다 😭
How to get rid of this?
we can use Optional Chaining
현대적인 방법!
if(person?.education?.highSchool?.mark?.maths){
console.log('Life saver! 🤩');
}
Note: Modern browsers supports Optional Chaining, for nodejs projects you should have nodejs v14.x version installed.
또는 (Optional Chaining 없이 간단한 해킹)😉
if(((((person || {}).education || {}).highSchool || {}).mark || {}).maths) {
console.log('Looks weird! but easy!')
}
인명인칭이라기 보단.... 블라블라 🤥
이렇게 코딩하시면 됩니다! 🌟
당신의 프로젝트에 이것을 시도하고 당신의 생각을 댓글로 달아주세요!
Reference
이 문제에 관하여(선택 사항?.체인화 🤩 - 개발자를 위한 훌륭한 선물), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/tjsudarsan/optional-chaining-a-great-gift-for-devs-gfb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)