angular.forEach返回对象数组重复相同的对象

时间:2015-10-16 15:22:13

标签: javascript arrays angularjs loops

我有一个包含5个对象的数组,我需要循环并返回一个对象数组。但是,当我这样做时,它只返回最后一个对象5次。

我已经得到了两段代码,它们完全相同,就像另一块没有那样。

工作代码:(循环遍历字符串,拆分|并返回数组中的对象);

angular.forEach(exampleString, function(data) {
    if (data.indexOf('|') !== -1) {
        data = data.split('|');
        //self.model.getDataFromArray()returns an object
        newArray.push(new self.model.getDataFromArray(data));
    }
});

//returns array of objects

不起作用:(遍历对象并返回一个对象,但只将最后一个推送到数组5次)

angular.forEach(exampleObjects, function(data) {
    this.push(new self.model.getDataFromObject(data));
}, newArray);

我做或不做的事情是否导致此失败?我能说的唯一真正的区别是,我从一个字符串开始,而不是从一个对象开始。

只是为了澄清我是否做了以下我得到了同样的重复:

 angular.forEach(exampleObjects, function(data) {
    newArray.push(new self.model.getDataFromObject(data));
});

1 个答案:

答案 0 :(得分:0)

我认为问题在于你的getDataFromObject方法。该方法的代码是什么?