Javascriptの繰り返しfor文内でimg.onloadをすると、カウンター変数が思うように取得できないことがある。
たぶんonloadして待ってる間にカウンターが回ってしまっているため。
そういう場合は、img.onloadに現在のカウンター値を引数として渡してやる。
// NG:
for(let index = 0; index < 100; index++){
let img = new Image();
img.src = '/pathTo/image.jpg';
img.onload = function() {
console.log(index);// ★It doesn't go as expected
}
}
↓
// OK:set parameter
for(let index = 0; index < 100; index++){
let img = new Image();
img.src = '/pathTo/image.jpg';
img.onload = function() {
console.log(index);
}(index);// ★parameter
}