如何将数据推送到数组,当循环对象

时间:2017-05-04 09:09:44

标签: jquery angularjs

我想从API循环对象结果,并将其推入数组。

historys: any = [];

循环。

Object.keys(response['orderdetail']).forEach(function(index, key) {
  console.log(key, response['orderdetail'][index])
  this.historys.push(response['orderdetail'][index]);
});

看起来this.historys不是historys: any = [];, 怎么做。

1 个答案:

答案 0 :(得分:2)

此问题出现在foreach函数中,您已丢失this上下文并且已更改。您可以将上下文作为参数传递给foreach。

Object.keys(response['orderdetail']).forEach(function(index, key) {
  console.log(key, response['orderdetail'][index])
  this.historys.push(response['orderdetail'][index]);
}, this);
// ^^^^ this will keep the this context