我把代码重新加载到Chrome控制台中的当前页面。
例如..
(function myLoop (i) {
setTimeout(function () {
console.log(i);
if (--i) myLoop(i);
}, 3000)
})(10);
运行上面的代码后,循环只运行一次,控制台重新加载。
我该怎么做?
答案 0 :(得分:2)
您提供的功能从10减1到1,间隔为3秒。如果您直接在Chrome控制台中运行它并在中间刷新页面,那么它当然会被终止,因为该功能正在您加载的当前页面的上下文中执行。
如果您希望在代码在页面(而不是控制台)中运行时在重新加载之间保持循环,那么您可以在执行代码时保持变量的状态,例如在本地存储或cookie中。页面加载时,请使用存储的值而不是默认值。
示例:强>
window.onload = function() {
var count = localStorage.getItem('count');
if (count == null) count = 10;
(function myLoop(i) {
setTimeout(function() {
localStorage.setItem('count', (i-1));
console.log(i);
if (--i) {
myLoop(i);
} else {
localStorage.removeItem('count');
}
}, 3000)
})(count);
}
答案 1 :(得分:0)
首先,你为什么要这样做? 你想重新加载一个网页会很奇怪,为什么? 如果它用于互联网速度目的,我宁愿:
cmd.exe /C ping (target) /t 00 /n 65000
但你可以尝试使用循环语句。我对C#不太熟悉,所以我在互联网上搜索了它。
int number = 0;
while(number < 5)
{
// yourcode
number = number + 1;
}
答案 2 :(得分:0)
您可以创建一个Chrome扩展程序,重新加载后可以继续执行