동일성과 불일치 연산자는 두 값을 비교해 두 값이 같으면 다른지 파악한 후 비교 결과에 따라 불린값(참이나 거짓)을 반환한다.
자바스크립트에서 숫자, 문자열, 불린값은 값을 기준으로 비교된다.
객체, 배열, 함수는 참조를 기준으로 비교된다. 이는 두 변수가 같은 객체를 가리킬 때만 같다는 것을 의미한다. 두 개의 개별 배열은 절대로 같거나 일치하지 않는데, 같거나 동일한 요소를 담고 있는 경우에도 그렇다.
=== 연산자는 두 값이 같은지 판단한다.
동일성에 대한 예제는 다음과 같다.
console.log(5===5); // true console.log("java"==="java"); // true console.log(false===false); // true console.log(null===null); // true console.log(undefined===undefined); // true var obj1 = {}; var obj2 = obj1; console.log(obj1===obj2); // true
불일치에 대한 예제는 다음과 같다.
console.log("5"===5); // false console.log(NaN===NaN); // false console.log(false===null); // false console.log(null===undefined); // false var obj1 = {}; var obj2 = {}; console.log(obj1===obj2); // false Nonidentity (!==)
!== 연산자는 두 값이 서로 같으면 false를 반환하고, 그렇지 않을 경우 true를 반환한다. 다음 예제를 보자.
console.log(5!==5); // false console.log("java"!=="java"); // false console.log(false!==false); // false console.log(null!==null); // false console.log(undefined!==undefined); // false var obj1 = {}; var obj2 = obj1; console.log(obj1!==obj2); // false
== 연산자는 두 값이 동등한지 판단한다.
두 값이 같은 타입일 경우 두 값이 일치하면 동등하고, 값이 일치하지 않으면 동등하지 않다.
두 값의 타입이 같지 않을 경우
동치성에 대한 예제는 다음과 같다.
console.log(5==5); // true console.log("5"=="5"); // true console.log("5"==5); // true console.log(null==undefined); // true console.log(false==0); // true console.log(true=="1"); // true
!= 연산자는 두 값이 서로 동등하지 않을 경우 거짓을 반환하며, 그 밖의 경우 참을 반환한다. 다음 예제를 보자.
console.log(5!=5); // false console.log("5"!="5"); // false console.log("5"!=5); // false console.log(null!=undefined); // false console.log(false!=0); // false console.log(true!="1"); // false
← 이전 | 홈 | 다음 → |