этот код запускает функцию каждые 200 миллисекунд, как это сделать, если я хочу, чтобы функция запускалась 10 раз.
Спасибо за помощь.
Ответ 1
Используйте счетчик, который увеличивается каждый раз, когда выполняется обратный вызов, и когда он достигает желаемого количества исполнений, используйте clearInterval(), чтобы убить таймер:
var counter = 0;
var i = setInterval(function(){
// do your thing
counter++;
if(counter === 10) {
clearInterval(i);
}
}, 200);
Ответ 2
(function(){
var i = 10;
(function k(){
// your code here
if( --i ) {
setTimeout( k, 200 );
}
})()
})()
Ответ 3
если вы хотите, чтобы он выполнялся в течение 10 раз, и время, которое должно выполняться, составляет каждые 200 миллисекунд, а затем 200X10 = 2000
var interval = setInterval(yourfunction, 200);
setTimeout(function() {
clearInterval(interval)
}, 2000);
но он работает только 9 раз, поэтому мы должны добавить более 200 миллисекунд
var interval = setInterval(yourfunction, 200);
setTimeout(function() {
clearInterval(interval)
}, 2200);