【发布时间】:2010-11-22 19:15:54
【问题描述】:
所以我有一个类 foo,它有一个返回数组 bar 的方法。我有另一个函数调用 foo.getBar 然后过滤数组。当我使用不同的过滤器时,我希望能够始终获得 bar 的原始内容,但 bing 似乎只是创建对 bar 的引用,而不是单独的数组。我试过使用 return this.bar.valueOf();在我的函数 foo 中,仍然无法正常工作。当我从 bing 中删除项目时,它们也会从 bar 中删除。有人请启发我创建一个唯一的数组而不是引用。
function foo(x, y, z){
this.bar = new Array();
...
this.bar = [ some , stuff , in , bar ];
this.getBar = function getBar(){
return this.bar;
}
...
}
var FooObject = new foo(x,y,z);
function baz(){
var bing = FooObject.getBar();
bing.splice(remove some pieces of the array);
}
【问题讨论】:
标签: javascript arrays object function return-value