javascript - 如何将来自 setInterval 的数据推送到数组中

标签 javascript arrays reactjs object redux

我的 setInterval 函数应该将数据注入(inject)数组。它是对象 -- {id: 0} 然后是 {id:1}{id:2}...-- 被注入(inject)并且 id 的值改变每次超时都触发后。但不是将它填充到数组中以获得类似 [{id:1}, {id:2}, {id:3}...] 我得到的仍然是一样的值[{id:1}]。我正在使用推送功能:

const arr = [];
arr.push(this.props.test);
console.log(arr);

this.props.test 只是每次 setInterval 触发后的新对象。与我的预期相反,我总是在 console.log 中得到最后一个对象。

最佳答案

如果我没猜错,你需要这样的东西:

const arr = [];
let counter = 0;

setInterval(() => {
  arr.push({id: counter++});
  console.log(JSON.stringify(arr));
}, 2000);

说明:setInterval的第一个参数是每2秒执行一次的函数。在此函数中,您创建一个新对象 {id: counter++} 并将其推送到您的数组。请注意,您需要在 setInterval 之外创建数组 - 否则它将被覆盖

关于javascript - 如何将来自 setInterval 的数据推送到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48493056/

相关文章:

javascript - webRTC 在功能上是如何工作的?

javascript - 渲染后修改 React 子组件 props

javascript - 索引在 React array.Map 函数中没有按预期工作

javascript - 有没有办法比较 json 响应的数组名称?

php - 使用 PHP 在 session 中将两个数组合并在一起

c++ - 是否可以将一种类型的数组转换为大小不同的另一种类型的数组?

reactjs - 如何创建 protected 路由?

javascript - Jquery 查找图像高度不工作

javascript - 在 CasperJS 中查询 getElementInfo 对象

javascript - 使点击仅适用于父项