关于javascript的定时问题

jifengyishan 2016-04-23 05:51:46
假如我想每隔两秒就输出一句hello world
<script type="text/javascript">
var c=1;
var t;
function timedCount()
{
while(c>0)
{
t=setTimeout("document.write('hello world')",2000);
}
}
</script>
body中按钮button设置onclick=“ timedCount()”,为什么不输出啊
小白求解
...全文
131 6 打赏 收藏 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jifengyishan 2016-04-24
  • 打赏
  • 举报
回复
在javascript中循环一般就用递归喽???
cocotsau 2016-04-23
  • 打赏
  • 举报
回复
没有终止条件为死循环,while里面的语句重复执行,最后浏览器卡住了。 改用setInterval
天际的海浪 2016-04-23
  • 打赏
  • 举报
回复
主要有两个问题。 一 setTimeout()不会暂停当前程序线程的执行。 而是等当前程序线程执行完,才开始计时,计时到了之后重新建立一个新的程序线程来执行setTimeout()内的代码。 二 document.write()一般只在页面加载完成之前使用。 当页面加载完成之后,文档流会自动关闭,就不要用document.write()了 再用document.write()就是重新创建一个新的页面。
qq_34767145 2016-04-23
  • 打赏
  • 举报
回复
var t=null; function timedCount(){ document.write('hello world'); t=setTimeout(timedCount,2000); }
jifengyishan 2016-04-23
  • 打赏
  • 举报
回复
我知道是死循环,我的意思是在网页上测试代码的时候,屏幕不输出hello world
cheery_an 2016-04-23
  • 打赏
  • 举报
回复
因为while(c>0) 这里死循环了

87,984

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧