为什么这个定时器只执行了一次,后面就不再执行了,有代码

shbaby008 2012-05-10 05:40:14
var userName="jack";
//根据用户名显示欢迎信息
function hello(_name){
alert("hello,"+_name);
}
//创建一个函数,用于返回一个无参数函数
function _hello(_name){
return function(){
hello(_name);
}
}
window.setTimeout(_hello(userName),3000);


真的很怪
...全文
1043 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
aopha 2012-05-10
  • 打赏
  • 举报
回复
在你的_hello(userName)中再加上这句就可以了
window.setTimeout(_hello(userName),3000);
asuka986 2012-05-10
  • 打赏
  • 举报
回复
setTimeout只在指定时间之后执行一次
setInterval指定运行的时间间隔,间隔到了即执行指定函数

http://www.w3school.com.cn/htmldom/met_win_setinterval.asp
乌镇程序员 2012-05-10
  • 打赏
  • 举报
回复
window.setTimeout(_hello(userName),3000); //延时3秒后执行,只执行一次
window.setInterval(_hello(userName),3000); //每隔3秒执行一次
likeajin 2012-05-10
  • 打赏
  • 举报
回复
setInterval

87,904

社区成员

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

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