Web/javascript
보자마자 유용하다고 느끼는 javascript 문법
rockettttman
2022. 6. 14. 22:30
보통 프로젝트를 하면 null,undefined, "", 0 등을 체크할 때 새로운 공통 유틸 함수를 만들어서 체크하는데 아래 문법을 잘 알고 있으면 object의 value값을 빈값 체크 시에도 runtime error 없이 체크할 수 있다.
1. && and함수
console.log(undefined && 'ㅁㅁㅁ')
=> undefined
console.log(null && 'ㅁㅁㅁ')
=> null
console.log(0 && 'ㅁㅁㅁ')
=> 0
console.log("" && 'ㅁㅁㅁ')
=> ""
console.log(false && 'ㅁㅁㅁ')
=> false
console.log(true && 'ㅁㅁㅁ')
console.log('aaa' && 'ㅁㅁㅁ')
=> 'ㅁㅁㅁ'
2. || or함수(0, "", undefined, null, false 체크)
=> expr
console.log(null||"ㅁㅁㅁ")
console.log(undefined||"ㅁㅁㅁ")
console.log(0||"ㅁㅁㅁ")
console.log(""||"ㅁㅁㅁ")
console.log(false||"ㅁㅁㅁ")
=> 'ㅁㅁㅁ'
console.log("aaa"||"ㅁㅁㅁ")
=> aaa
console.log(true||"ㅁㅁㅁ")
=> false
3. ?? (undefined, null 체크)
console.log(null??"ㅁㅁㅁ")
console.log(undefined??"ㅁㅁㅁ")
=> ㅁㅁㅁㅁ
console.log(false ?? 'ㅁㅁㅁ')
=> false
console.log("aaa"??"ㅁㅁㅁ")
=> aaa
console.log(0??"ㅁㅁㅁ")
=> 0
console.log(""??"ㅁㅁㅁ")
=> ""
var user;
console.log(user ?? "로딩중")
=> 로딩중 (api호출 시에도 활용할 수 있음)
4. ?. (object에서의 undefined, null 체크)
=> 점이 2개 이상일 때 유용
const user = {
name: "ben"
// age: { value: 32 }
}
console.log(user.age.value)
=> VM873:1 Uncaught TypeError: Cannot read properties of undefined (reading 'value')
at <anonymous>:1:22
console.log(user.age?.value)
=> undefined (runtime error 예방)
참고1 :https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Expressions_and_Operators
표현식과 연산자 - JavaScript | MDN
이 장은 JavaScript의 표현식과 할당, 비교, 산술, 비트 계산, 논리, 문자열, 삼항 등 여러 가지 연산자를 설명합니다.
developer.mozilla.org
참고2:https://youtu.be/WHUvtiKy_pg