gpt4 book ai didi

javascript - 可能的 Javascript 错误?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:35:22 24 4
gpt4 key购买 nike

这是代码示例:

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<script>
i = 0
while(i < 500)
{
date = new Date()
console.log(i, ' ', date);
date.setHours(5)
i++
}

</script>

</head>
<body>
</body>
</html>

firebug 控制台最终输出设置为 5 小时的日期,而不是原始的、未更改的日期。我只在 Firefox 17 上测试过。

最佳答案

这取决于浏览器对 console.log 的实现。据我所知,浏览器有一个异步 console.log 功能,Chrome 也是如此。异步函数的执行仅在浏览器不做任何事情时执行。

while (i < 500) {
date = new Date()
console.log(i, ' ', date); //this set aside
date.setHours(5); //this executed first instead
i++;
}

为了证明 console.log 是罪魁祸首,I have this code它将结果输出到 DOM 而不是使用 console.log 并且显示正确。

i = 0
while (i < 500) {
date = new Date()
$('body').append('<div>'+i+':'+date+'</div>');
date.setHours(5);
i++;
}

关于javascript - 可能的 Javascript 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15020103/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com