模拟实现Object.is()方法代码实例

2017-3-10 00:43| 作者: admin| 查看: 659| 评论: 0|来自: 蚂蚁部落

本章节分享一段代码实例,它模拟实现了Object.is()方法。

因为此方法是ES6新增,所以存在一定浏览器兼容性问题,模拟实现比较稳妥。

代码实例如下:

[JavaScript] 纯文本查看 复制代码
Object.defineProperty(Object, 'is', {
  value: function(x, y) {
    if (x === y) {
      // 针对+0 不等于 -0的情况
      return x !== 0 || 1 / x === 1 / y;
    }
    // 针对NaN的情况
    return x !== x && y !== y;
  },
  configurable: true,
  enumerable: false,
  writable: true
});

上面代码实现了我们的要求,更多内容可以参阅相关阅读。

相关阅读:

(1).Object.defineProperty()可以参阅Object.defineProperty()一章节。

(2).===可以参阅javascript的三个等号(===)的作用一章节。

(3).NaN可以参阅javascript NaN一章节。


鲜花

握手

雷人

路过

鸡蛋

最新评论

返回顶部