我有一个编程练习来创建两个数组原型,它们都是函数。我已经把我的代码放在下面。如最后一行所示,另一个将被调用。我想获得第二个函数来修改通过简单地调用第一个函数返回的值。这是对于下面的代码,我希望输出是[4,6,4000],我反过来得到推后数组的长度,即在这种情况下,3。如何从Array的原型函数返回数组对象?
Array.prototype.toTwenty = function()
{
return [4,6];
};
Array.prototype.search = function (lb)
{
if(lb >2)
{
//This doesn't work
return this.push(4000);
}
};
var man = [];
console.log(man.toTwenty().search(6));
//console.log returns 3, I need it to return [4,6,4000]
我的搜索导致我arguments.callee.caller
,但没有尝试做为所被取消,我无法使用它。
请问有人可以帮我吗?我试图读取原型继承,链接和级联,但似乎无法提取答案。感谢您的帮助
*“我有一个编程练习创建两个数组原型“*您的任务是将函数添加到'Array.prototype',而不是创建两个p Array的旋转型(这是不可能的)。 –
1.没有理由''toTwenty'应该放在'Array.prototype'上,因为它不使用数组,它只是返回一个新数组。它应该在'Array'上。 2.如果要添加到'Array.prototype',最好使用'Object.defineProperty'并使添加不可枚举。为什么在[这个答案]中间接覆盖(http://stackoverflow.com/questions/9329446/for-each-over-an-array-in-javascript/9329476#9329476)。 –