我的 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/