的山这一个坑,这的呀哈哈怎么雪山恩仇奇遇触发条件

(/bs穨廢苼活)
(方言即文化)
(砂沫singalongsong)
(艾玛·鱼-最好的时光是用来浪费)
第三方登录:《荒野之息》呀哈哈完全收集攻略(900/900更新完毕) |& & & & 在一次工作中碰到setTimeout的一个大坑,在用setTimeout进行延时执行一个函数的时候,由于该函数需要传参,所以把它写成了&setTimeout(fn(data),1000)&,详细如下代码:
         function hello(id){
alert(id);
setTimeout(hello("username"),3000)
&结果函数立即执行了,根本没有延时,很费解,查了下资料,知道setTimeout的正确写法是setTimeout(fn,3000)或者setTimeout(function(){ //... },3000),隐隐知道我这样写有哪点不对,可是说不明白我这样写具体问题在哪里,今天看其他资料的时候突然想到这个问题,就下决心要好好看看这个问题。
& & & &首先,发现setTimeout与JS的运行机制有一定关系,JS是单线程的,在有多个函数或者其他需要运行的时候,会按顺序一个接着一个执行,也就是说如果在setTimeout(fn,delay)之后或者之前有其他要执行的函数或者其他什么的时候,会按顺序执行所有。其次,setTimeout本身(相当于原型上,不知道这样说对不对)是没有fn(data)后面所带的(data)(执行切带参数)的。从以上阐述一分析,JS的运行机制是按顺序,当然对于setTimeout来说更特殊却也很简单,对于setTimeout,浏览器会先执行其他,再执行setTimeout。也许你会说是因为有delay,那么看下面这段代码:
function test () {
setTimeout(function () {
a=5         alert(a)        },0)       alert(a)     }     test ()    alert(0)
此时,会依次弹出1,0,5。此时延时为0,setTimeout仍然是最后执行的。说明浏览器对setTimeout的解析就如我所说一样,先执行其他立即执行的程序,此外也要注意这个里面写出来的所谓的delay时间可能大于等于实际延迟时间。因此对于setTimeout(fn(data),3000)&,会立即执行fn这个函数而没有任何延迟。针对阐述二,我暂时没办法查到setTimeout的运行机制或者说&原型&上的问题,因此只能讲一个根据这个&原型&理论作出的针对这个问题的解决方案,即改写setTimeout&原型&,具体见如下代码:
 function hello(id){
      alert(id);  
    var _sto = setT
    window.setTimeout = function(callback,timeout,param){
      var args = Array.prototype.slice.call(arguments,2);
      var _cb = function(){
        callback.apply(null,args);
      }
      _sto(_cb,timeout);
    window.setTimeout(hello,3000,"userName");
& & 另外一个解决方案:
function hello(id){
alert(id);
setTimeout('hello("username")',3000)
& & &感觉自己对setTimeout的运行机制内部即我所谓的&原型&方面了解还不是很好,希望看到此篇博客的同学可以在文章下方留言交流,希望和大家一起进步!
阅读(...) 评论()这个小风车呀哈哈怎么触发啊?【塞尔达传说吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:110,806贴子:
这个小风车呀哈哈怎么触发啊?
这个小风车呀哈哈怎么触发啊?
站到风车边上在你的视线范围内会有可以射下来的东西,全部射掉就出来了
记得好像是要站在上面射一个很远的气球,需要一把远程弓,我当时用古代弓射的
贴吧热议榜
使用签名档&&
保存至快速回贴求问这个呀哈哈怎么触发啊【荒野之息吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:4,448贴子:
求问这个呀哈哈怎么触发啊
求问这个呀哈哈怎么触发啊
看看旁边的是什么树,这里不是香蕉就是榴莲了吧?
放个香蕉就行吧
两个雕像,有一个身前放着一个榴莲,你一定是给捡起来了,应该往另一个的身前也放一个榴莲,保持一致,就行了。话说,这个问题也问的话,卡卡利科村老太婆家门口有五个放苹果的雕像,也是个呀哈哈,别说你也没发现……我现在找到220个呀哈哈,大概有四五个是这种要补足祭品保持一致的,一般都是放苹果,这个榴莲是个例。
贴吧热议榜
使用签名档&&
保存至快速回贴

我要回帖

更多关于 三国志11定军山触发 的文章

 

随机推荐