首页 > 解决方案 > JavaScript 只打印数组的最后一个元素

问题描述

我想在里面循环,this.results 这是一个来自我的服务器的 JSON,但我的代码只打印数据的最后一个元素

 let tempEvent = [];

  this.results.map(element => {
    tempEvent.push(element);
  });
  let arr = [];

  for (let i = 0; i < tempEvent.length; i++) {
    arr = [{ name: this.results[i].name }];

  }
  console.log(arr);

我已经尝试过这样做:

for (let i = 0; i < tempEvent.length; i++) {
    arr += [{ name: this.results[i].name }];
}

但它给了我[Object object],我不知道那是什么。

标签: javascriptarraysjavascript-objects

解决方案


您正在重新分配整个数组。您可以在每次迭代中推送项目。

我也相信你想在这里推送一个对象而不是另一个数组:

arr.push({ name: this.results[i].name });

或:使用索引

arr[i] = { name: this.results[i].name };

推荐阅读