javascript中myTimer =setInterval(show,100);与myTimer =setInterval(show(),100);的区别?

二者的效果一样么?myTimer=setInterval(show,100);……myTimer=setInterval(show(),100);……只是少了一个“()”... 二者的效果一样么?myTimer =setInterval(show,100);……myTimer =setInterval(show(),100);……只是少了一个“()”……求高手讲解……如果换成myTimer =setInterval("show()",100);呢? 展开
 我来答
本逸春vL
2011-08-10 · TA获得超过1567个赞
知道小有建树答主
回答量:812
采纳率:0%
帮助的人:647万
展开全部
setInterval(show,100); 这个是将整个函数当参数传递进去。
setInterval(show(),100); 这个是执行函数,把函数的返回值传递进去。
setInterval 函数的第一个参数要求传递的是函数,
所以如果换成myTimer =setInterval(show(),100);会报错。
但是如果加上引号就不一样了,
myTimer =setInterval("show()",100);
setInterval 会将字符串代码执行,也就相当于 eval("show()");
nx8823520
2011-08-10 · TA获得超过648个赞
知道小有建树答主
回答量:324
采纳率:0%
帮助的人:340万
展开全部
所以如果换成myTimer =setInterval(show(),100);会报错。

纠正下因为在做定时器的时候时常会传递参数,所以加上引号后就想你属偶的是执行函数这样也是不对的 最好的是做法在里面新建和函数传递比如:

myTimer =setInterval("function(){show(1)}",100);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
俺啥都知道
2011-08-17 · TA获得超过298个赞
知道小有建树答主
回答量:291
采纳率:0%
帮助的人:236万
展开全部
先看看JS的基本语法吧,这么弱智的问题 还推荐我来回答, 对知道无语了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式