我正在尝试做一些事情,我每秒都会显示不同的递增数字,但我无法正确设置setInterval。
这就是我所拥有的
function counter() {
var i = 0;
while ( i < 100 ) {
// This block will be executed 100 times.
setInterval(console.log( 'Currently at ' + i ), 1000);
i++; // Increment i
}
} // End
但我得到的是console.log开了100次,然后重复。
感谢您的帮助。
麦克
答案 0 :(得分:5)
当你创建一次setInterval时,它会每隔1000
毫秒(第二个参数)自动调用函数(第一个参数)。所以你不需要在里面做,只需在函数(第一个参数)中增加i
。
function counter() {
var i = 0;
// This block will be executed 100 times.
setInterval(function(){
if (i == 100) clearInterval(this);
else console.log( 'Currently at ' + (i++) );
}, 1000);
} // End
function counter() {
var i = 0;
var funcNameHere = function(){
if (i == 100) clearInterval(this);
else console.log( 'Currently at ' + (i++) );
};
// This block will be executed 100 times.
setInterval(funcNameHere, 7000);
funcNameHere();
} // End
答案 1 :(得分:1)
var iter = 0;
function counter() {
console.log('show at ' + (iter++));
setTimeout(counter, 1000);
}
counter();
答案 2 :(得分:0)
var i=0;
var timer;
function increement() {
if(i<100) {
console.log( 'Currently at ' + i )
} else {
clearInterval(timer);
}
i++;
}
timer = setInterval(function() {increement()}, 1000);