root 7621d6d22a 221005-1449-Kim 2 年之前
..
test 7621d6d22a 221005-1449-Kim 2 年之前
.eslintignore 7621d6d22a 221005-1449-Kim 2 年之前
.eslintrc 7621d6d22a 221005-1449-Kim 2 年之前
.nycrc 7621d6d22a 221005-1449-Kim 2 年之前
CHANGELOG.md 7621d6d22a 221005-1449-Kim 2 年之前
LICENSE 7621d6d22a 221005-1449-Kim 2 年之前
README.md 7621d6d22a 221005-1449-Kim 2 年之前
auto.js 7621d6d22a 221005-1449-Kim 2 年之前
implementation.js 7621d6d22a 221005-1449-Kim 2 年之前
index.js 7621d6d22a 221005-1449-Kim 2 年之前
package.json 7621d6d22a 221005-1449-Kim 2 年之前
polyfill.js 7621d6d22a 221005-1449-Kim 2 年之前
shim.js 7621d6d22a 221005-1449-Kim 2 年之前

README.md

#object-is Version Badge

Build Status dependency status dev dependency status License Downloads

npm badge

ES2015-compliant shim for Object.is - differentiates between -0 and +0, and can compare to NaN.

Essentially, Object.is returns the same value as === - but true for NaN, and false for -0 and +0.

This package implements the es-shim API interface. It works in an ES3-supported environment and complies with the spec.

Example

Object.is = require('object-is');
var assert = require('assert');

assert.ok(Object.is());
assert.ok(Object.is(undefined));
assert.ok(Object.is(undefined, undefined));
assert.ok(Object.is(null, null));
assert.ok(Object.is(true, true));
assert.ok(Object.is(false, false));
assert.ok(Object.is('foo', 'foo'));

var arr = [1, 2];
assert.ok(Object.is(arr, arr));
assert.notOk(Object.is(arr, [1, 2]));

assert.ok(Object.is(0, 0));
assert.ok(Object.is(-0, -0));
assert.notOk(Object.is(0, -0));

assert.ok(Object.is(NaN, NaN));
assert.ok(Object.is(Infinity, Infinity));
assert.ok(Object.is(-Infinity, -Infinity));

Tests

Simply clone the repo, npm install, and run npm test