이전에 이중 등호 "==" 또는 삼중 등호 "==="를 사용하여 값을 비교했습니다. 두 당사자의 유형이 다른 한 세 번째 등호는 더 엄격합니다. false는 즉시 반환됩니다.
또한 자신과 같지 않은 값은 NaN
이제 ES6에는 또 다른 Object.is가 추가되어 비교 작업의 세계가 더욱 혼란스러워졌습니다. 대부분의 경우 Object.is는 다음과 같이 "==="와 동일합니다.
1 === 1 // true Object.is(1, 1) // true 'a' === 'a' // true Object.is('a', 'a') // true true === true // true Object.is(true, true) // true null === null // true Object.is(null, null) // true undefined === undefined // true Object.is(undefined, undefined) // true
그러나 NaN, 0, 0, -0의 경우 “===”와는 다릅니다
NaN === NaN // false Object.is(NaN, NaN) // true 0 === -0 // true Object.is(0, -0) // false -0 === +0 // true Object.is(-0, +0) // false
위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.