谷歌浏览器控制台中的JavaScript setTimeout()

4

为什么在某些页面上Chrome控制台中的setTimeout无法工作,或者我做错了什么?

setTimeout(function(){console.log('a');},3000);

输出:

<- 6425

示例页面:http://olx.pl


编辑:似乎在某些页面上,console.log()被覆盖了...由于这是特定于网站的问题,因此应该删除此问题。但无法这样做,因为它有答案。


1
在MDN上了解window.setTimeout() - Etheryte
5
数字6425是超时ID。因此显然它至少正在创建超时。在3秒钟内,它应该调用该函数。那么为什么它不显示日志呢?嗯,你的控制台是否被筛选以不显示日志行? - epascarello
2
哈哈,它运行了... - epascarello
2
不,它会在3秒后输出“a”。 - epascarello
1
兄弟,你的浏览器有问题。你的控制台日志被过滤了,不显示console.log吗?如果你把它改成alert(),那么alert会出现吗? - epascarello
显示剩余12条评论
1个回答

3

它确实有效。关键是你可能没有等待足够长的时间。

console.log(setTimeout(() => console.log('a'), 1000));

那个数字是timeoutId。每当您调用setTimeoutsetInterval时,它都会返回一个数字ID,您可以将其传递给clearTimeout()clearInterval()来在运行之前中止它。

对我来说不起作用,即使等一分钟。请从控制台运行您的代码......您会发现它不起作用。 - Flash Thunder
@FlashThunder 或许该网站上有一个 console.log 覆盖。 - charlietfl

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接