我在数据模型中初始化了一个属性,如下所示:
someArray: []
我从这里的函数得到一个数组:
myArray: function (value) {
var result = [7, 8, 9, 10];
return result;
}
我在这里调用该函数:
this.someArray = this.myArray(someValue);
我的财产someArray
没有得到想要的结果。它正在返回一个空项目。
我听说某处可能必须手动推送每个项目。这是真的?我究竟做错了什么?
答案 0 :(得分:-1)
在javascript中,对象和数组是引用,与其他变量类型不同。
您可以参加:
myArray: function (value) {
var result = new Array(4);
result[0] = 7;
result[1] = 8;
result[2] = 9;
result[3] = 10;
return result;
}
然后使用.slice()
方法将正确复制该数组:
this.someArray = this.myArray('someValue').slice();
顺便说一句,我不明白您为什么要传递value
参数,因为它没有在您的函数中使用。