JS: Object.is (test equality)

By Xah Lee. Date: . Last updated: .

(new in ECMAScript 2015)

Object.is(value1, value2)

return true if two values are equal.

similar to Triple Equal Operator , but can distinguish negative zero and positive zero, and two NaN are considered equal.

console.assert(Object.is("x", "x") === true);
console.assert(Object.is(3, 3) === true);
console.assert(Object.is(3, 3.0) === true);
console.assert(Object.is(Infinity, Infinity) === true);

// s------------------------------

// testing equality of two NaN
console.assert((Object.is(NaN, NaN)) === true);
console.assert((NaN === NaN) === false);

// negative zero and positive zero
console.assert(Object.is(-0, +0) === false);
console.assert(-0 === +0 === true);

JavaScript. Special Literals

JavaScript. Test Equality