Javascript Chrome控制台-在循环中重新加载
我需要检查我的访客跟踪器,所以我在chrome控制台中输入了这个,设置为保留日志:Javascript Chrome控制台-在循环中重新加载,javascript,console.log,Javascript,Console.log,我需要检查我的访客跟踪器,所以我在chrome控制台中输入了这个,设置为保留日志: i = 0; while (i<4) { location.reload(); window.alert(i); i++; } i=0; 虽然(i当您重新加载页面时,您编写的所有javascript代码都会丢失。在您的代码中,location.reload()函数在alert()之前执行,但我怀疑,因为location.reload()函数完全执行需要时间,它仍然有足够的时间
i = 0;
while (i<4)
{
location.reload();
window.alert(i);
i++;
}
i=0;
虽然(i当您重新加载页面时,您编写的所有javascript代码都会丢失。在您的代码中,location.reload()
函数在alert()
之前执行,但我怀疑,因为location.reload()
函数完全执行需要时间,它仍然有足够的时间执行alert()
函数,以及所有其他迭代,这将导致while循环在页面重新加载之前完成
location.reload()
可能属于异步函数的范畴,这意味着该函数开始执行并在后台持续运行。异步函数后面的所有代码都会立即执行,而不管异步函数当时是否已完成
如果您想跟踪访问者数量,请使用一些php并将数据保存在数据库中
更新:
将此代码放入.html文件并打开它。根据需要多次重新加载它,然后检查控制台中的currentClicks
变量
<!DOCTYPE html>
<body>
<script>
var currentClicks = localStorage.getItem("clickCount");
currentClicks++;
localStorage.setItem("clickCount", currentClicks);
</script>
</body>
</html>
var currentClicks=localStorage.getItem(“clickCount”);
当前单击++;
setItem(“clickCount”,currentClicks);
我怀疑location.reload()
设置重新加载页面的请求,但该请求不会立即发生。它可能正在等待当前代码完成运行,然后稍后进行调度。在调度一次后,其余挂起的重新加载将丢失。这与java行为流无关。循环运行,但所有重新加载都会排队等待呃循环,它运行。可能。所有警报都发生在重新加载之前。是否有某种方法将请求存储在本地或会话存储中?您可以存储数据,但我不认为您可以存储执行代码的请求。我更新了您的anser,但有些人已否决。IDK为什么?如果您不介意修改页面本身的代码以帮助执行此过程,请回答ss,您可以将重新加载计数存储在本地存储中,并让页面检查该计数,当计数大于0时递减并重新加载。这一点不是为了计数器,而是为了检查它是否能工作这么多次并可能保存所有值。所有警报都发生在重新加载之前。是否有某种方法将请求存储在l中ocal还是会话存储?我认为可以使用localStorage和sessionStorage来处理此类问题。但问题是这些东西只存储数据。据我所知,它们不会在页面重新加载时执行数据。