题目 : 实现(10).add(10).subscribe(2).add(10),输出28
提示: add是加法 subscribe代表减法
console.log((10).add(10).subscribe(2).add(10)); //=>28
考点:
- 原型链
- JavaScript的Number对象方法valueOf
槽点:恍然大悟夹杂着羞愧 ~_@!!
Number.prototype.add = function (a) {
let value = this.valueOf() // valueOf返回一个 Number 对象的基本数字值,实际上就是调用这个方法的值
return value + a
}
Number.prototype.subscribe = function (a) {
let value = this.valueOf()
return value - a
}
console.log((10).add(10).subscribe(2).add(10)) //=>28 (10)相当于10