+ -
当前位置:首页 → 问答吧 → document.write和setTimeout的问题

document.write和setTimeout的问题

时间:2010-05-13

来源:互联网

原文地址:http://www.ilovespringna.com/?p=34187

废话不说,上题。
<script type="text/javascript"> setTimeout(function(){document.write("timeout");},0); document.write("write"); </script>
 提示:您可以先修改部分代码再运行
输出什么?

答案不是timeout write ,也不是timeout write ,答案是timeout。

为什么为这样呢?这个例子的原意是说明,setTimeout会将它的操作加入到一个响应队列中,使之异步化。

所以可能的答案是write timeout 。然而setTimeout中调用document.write会产生一个问题:
引用:
document.write对输出流操作,你的文档加载完成时,输出流自动关闭,此时setTimeout延时调用document.write打开一个新的输出流,就会清空页面内容。
因此输出的只有timeout。

作者: afc163   发布时间: 2010-05-13