代码改变世界

随笔档案-2006年12月

再谈JavaScript时钟中的16ms精度问题.

2006-12-21 11:25 by 乱世文章, 319 阅读, 收藏, 编辑
摘要: 上一篇BLOG中,通过测试我们发现JavaScript的时钟是16ms的间隔. 对于IE来说,每次总会发生16ms的间隔;对于firefox来说,会存在0ms的间隔. 对于后者,我曾解释说:可能是Java使用了自己的时钟.先说第二种情况,对于firefox中的js引擎,我尚未去看代码,因此我只说"可能",但后来hax来说,firefox的JS引擎仍是C写的,这才想起的确如此.所以这里先说,我前面关于firefox的问题的解释是错的.再说16ms的问题. 我其实也怀疑,为什么是16ms,而不是其它的什么值呢?hax给了我很多信息.我这里来整理一下:首先是取时间值.也就是我们在JavaScript 阅读全文

JavaScript时钟间隔的问题~

2006-12-19 17:53 by 乱世文章, 253 阅读, 收藏, 编辑
摘要: JavaScript中setTimeout()和setInterval()用于创建和管理时钟.但这个时钟的精度是多少,却没有什么资料来提及.在讨论具体的问题前,先说明一下setTimeout与setInterval在时钟间隔为0值的情况下的反应.当用户置setTimeout(proc, 0)时,将让出CPU直到下一个时钟间隔再开始执行proc,而并非"在0ms后执行proc";当用户置setInterval(proc, 0)时,时钟不会被初始化. JavaScript要求至少以1ms为间隔创建时钟.接下来,当interval值为1(或者其它很小的值)时,时钟将按一种"最小的"时间间隔来触发时钟 阅读全文
点击右上角即可分享
微信分享提示