学习中遇到的一些未解决的问题
程序员文章站
2022-03-13 17:13:18
实现方法连续调用题目:num = 5num.add(2).reduce(1) = 5 + 2 - 1解析:问题1,num作为基本类型,没有办法直接添加方法问题2:其次,上一个方法的返回值可以直接调用下一个方法首先,基本类型number不具备这样的方法。所以要使用它基本包装类型的原型,在原型上创建新的方法说明返回的值仍然是实例(可能经过上一个方法的更改),原型的实例即值Number.prototype.add=function(num){ return this + num;}...
实现方法的链式调用
题目:
num = 5
num.add(2).reduce(1) = 5 + 2 - 1
解析:
问题1,num
作为基本类型,没有办法直接添加方法
问题2:其次,上一个方法的返回值可以直接调用下一个方法
- 首先,基本类型number不具备这样的方法。所以要使用它基本包装类型的原型,在原型上创建新的方法
- 说明返回的值仍然是实例(可能经过上一个方法的更改),原型的实例即值
Number.prototype.add=function(num){
return this + num;
}
Number.prototype.reduce=function(num){
return this + num;
}
arguments转换Array
类似数组的数据==>数组类型
正常方法
// 正常方法
function arrayLike2Array() {
return Array.prototype.slice.call(arguments);
}
console.log(arrayLike2Array(1, 2, 3, 4, 5, 6, 7)); // [1,2,3,4,5,6,7]
非常规
// 非常规
var MakeObj = function () {
return Array.apply(null, arguments);
};
console.log(Array.call(null, 1, 2, 3, 4, 5, 6));
console.log(MakeObj(1, 2, 3, 4, 5, 6, 7));
本文地址:https://blog.csdn.net/weixin_41075012/article/details/107371186