암묵적 타입캐스팅 피하기


자바스크립트는 변수를 비교할 때 암묵적으로 타입캐스팅을 실행한다. 때문에 false == 0 이나 "" == 0과 같은 비교가 true를 반환한다.

암묵적 타입캐스팅으로 인한 혼동을 막기 위해서는 항상 표현식과 값과 타입을 모두 확인하는 ===와 !== 연산자를 사용해야 한다.

var zero = 0;
if(zero === false){
// zero는 0이고 false가 아니기 때문에 이 블록은 실행되지 않는다.
console.log("oen : " + zero);
}

// 안티패턴
if(zero == false){
// 이 블록은 실행된다.
console.log("two : " + zero);
}


+ Recent posts