동일성 연산자

동일성과 불일치 연산자는 두 값을 비교해 두 값이 같으면 다른지 파악한 후 비교 결과에 따라 불린값(참이나 거짓)을 반환한다.

자바스크립트에서 숫자, 문자열, 불린값은 값을 기준으로 비교된다.

객체, 배열, 함수는 참조를 기준으로 비교된다. 이는 두 변수가 같은 객체를 가리킬 때만 같다는 것을 의미한다. 두 개의 개별 배열은 절대로 같거나 일치하지 않는데, 같거나 동일한 요소를 담고 있는 경우에도 그렇다.

동일성 (===)

=== 연산자는 두 값이 같은지 판단한다.

동일성에 대한 예제는 다음과 같다.

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

관련 수업

← 이전다음 →