美文网首页
JS之prototype用法(给Number添加通用属性/方法)

JS之prototype用法(给Number添加通用属性/方法)

作者: dingFY | 来源:发表于2020-09-14 09:31 被阅读0次

下午室友发给我一道前端面试题,因为当时忙着赶项目,目光扫了一眼,立马就回答道 “写一个add方法和一个minus方法传参数进去就好了丫~ ”

等下班回过头来仔细看这道题,为自己的愚蠢的回答感到愧疚,发现题中是数字调用方法,这不是简单写个方法就能实现,而需要用到JS原生属性prototype

一、Number.prototype

  1. Number.prototype属性表示Number 构造函数的原型。
  2. 所有 Number实例都继承自Number.prototype,修改 Number 构造函数的原型对象会影响到所有 Number实例。.
  3. 通过给 Number.prototype增加方法可以让该方法对所有number都可用

二、Number实例方法

我们通过控制台将Number原生实例方法打印出来,如图

三、通过Number.prototype增加全局方法

以上面的面试题为例,我们需要给Number增加一个add和minus方法

    Number.prototype.add = function(num) {
      return this + num
    }
    Number.prototype.minus = function(num) {
      return this - num
    }
    console.log((3).add(2).minus(1)); // 4

再去查看一下Nubmer.prototype实例,我们会发现多了两个全局方法add和minus

文章每周持续更新,可以微信搜索「 前端大集锦 」第一时间阅读,回复【视频】【书籍】领取200G视频资料和30本PDF书籍资料

相关文章

网友评论

      本文标题:JS之prototype用法(给Number添加通用属性/方法)

      本文链接:https://www.haomeiwen.com/subject/bcyynhtx.html