JavaScript: How to pass current value to callback function?
我正在尝试将当前值传递给回调函数。 我用这个答案来处理,但它对我不起作用。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | for (var i = 0; i < 4; i++) { (function(_i) { var options = { //Options here }; console.log(_i); // 0, 1, 2, 3 LocalImageManager.download(options, function (results, _i) { console.log(_i); //undefined, undefined, undefined, undefined //Do stuff with results }); } })(i); |
问题是函数总是与"i"变量一起使用,这在循环结束后是未定义的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | for (var i = 0; i < 4; i++) { (function(_i) { var options = { //Options here }; console.log(_i); // 0, 1, 2, 3 LocalImageManager.download(options, function (results) { console.log(_i); // 0, 1, 2, 3 //Do stuff with results }); })(i); } |
您需要更改