gpt4 book ai didi

javascript - 读取嵌套函数 Javascript 中的循环变量

转载 作者:行者123 更新时间:2023-11-28 14:48:43 25 4
gpt4 key购买 nike

for (var j=0; j<charts.length; j++){
var chart = charts[j].chartImage;
chart["export"].capture({}, function() {
this.toPNG({}, function(data) {
saved_charts[j] = data;
charts_remaining--;

if (charts_remaining == 0) {
console.log(saved_charts[0]);
console.log(saved_charts[1]);
}
})
})
}

我在 saving_charts[j] 上的问题它无法读取 j 变量,并且它说“可以从闭包访问可变变量”。还有其他方法可以获取 j 变量吗?我知道我可以使用 array.push() 但由于某种原因,代码以不规则的方式生成数据值,而不会相应地返回数据值。我认为这是因为有些数据太大所以函数首先返回较小的数据。抱歉,我仍然很难理解 Javasript

最佳答案

这应该有效

for (let j=0; j<charts.length; j++){

如果不支持let关键字,这是经典的方式:

for (var j=0; j<charts.length; j++){
var chart = charts[j].chartImage;
(function(j) {
chart["export"].capture({}, function() {
this.toPNG({}, function(data) {
saved_charts[j] = data;
})
})
})(j);
}

关于javascript - 读取嵌套函数 Javascript 中的循环变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45371123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com