我有以下代码。
Array.prototype.range = function(start, count) {
this.push(start);
if(this.length == count){
return this;
};
this.range(start+1, count)
}
它的功能在于它按照我的意图修改数组,但没有返回值。
test = new Array;
test.range(0,3);
console.log(test);
会输出[0,1,2],但是
test = new Array;
console.log(test.range(0,3));
给我未定义的。有人可以向我解释为什么“退回这个”吗?在原型(prototype)方法中实际上并不返回对象?
谢谢。
最佳答案
您需要从初始通话中返回。
return this.range(start + 1, count);
关于javascript - 从 Array.prototype 方法返回数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19325599/