一道原型上封装的面试题

 写一段JS代码,按下面的方式实现plus和minus方法: var a = (7).minus(2).plus(1); console.log(a)//输出6。 既实现:(7).plus(2).minus(1);结果为6的代码;
 
 
Number.prototype.plus = function(n) {
    return this + n;
};
Number.prototype.minus = function(n) {
    return this - n;
}
var a = (7).plus(2).minus(1);
alert(a);

知识点:
(1) 为number原型增加方法。
(2) this指向调用者。 主要是考察对包装类是否能用prototype(原型)属性,包装类上也会有原型方法,只不过是Number包装类的原型方法用的少而已。String类上用的要多 别外,number类型的值,如果调用原型方法,需要把数学用括号括起来,要不然就是非法的浮点数了。

    原文作者:steven
    原文地址: https://segmentfault.com/a/1190000009081630
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞