以前にsetIntervalとsetTiemoutの関数に引数を使う方法の記事を投稿しましたが、setIntervalとsetTiemoutの第三引数以降に関数にわたす引数を設定できるようだったので、設定を試してみます。
サンプルコード
まずは対応前のサンプルです。
function sample(no) {
console.log(no);
}
for (var i = 0; i < 3; i++) {
setTimeout(function() {
sample(i);
}, 700);
setInterval(function() {
sample(i);
}, 500);
};
この場合、関数に渡される引数はすべて3になってしまいます。
対応前のデモページ
次にsetIntervalとsetTiemoutの第三引数に設定してみます。
function sample(no) {
console.log(no);
}
for (var i = 0; i < 3; i++) {
setTimeout(sample, 700, i);
setInterval(sample, 500, i);
};
この場合は意図した通り、0〜2の値が関数に渡されました。
対応後のデモページ
コメントが承認されるまで時間がかかります。