【发布时间】:2021-03-01 16:49:27
【问题描述】:
一直试图找出一种方法来在推入函数时保留我的对象状态。示例代码如下:
window.queue = window.queue || [];
var some_data = {
"object_number":1
}
queue.push(function(){console.log("1:",some_data)});
var some_data = {
"object_number":2
}
queue.push(function(){console.log("2:",some_data)});
// Code I Cannot Change
for (var i = 0; i < queue.length; i++) {
queue[i]();
}
队列执行的结果是:
1: {object_number: 2}
2: {object_number: 2}
您能看到当队列被解析时(我无法更改此代码 - 它由其他人控制),它如何查找“some_data”的最新版本?
知道如何保存对象传入时的状态吗?期望的结果是:
1: {object_number: 1}
2: {object_number: 2}
谢谢!
【问题讨论】:
标签: javascript arrays function object preserve