最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在Javascript類中使用setTimeout第2/2頁

 更新時間:2008年01月22日 23:19:38   作者:  
在Javascript類中使用setTimeout

window.setTimeout('window.Obj.shout()', 5000);另外,之前我也想到將對象保存為數(shù)組,然后引用調(diào)用,代碼如下:

function ObjectClass (property) {
    this.property = property;
    this.id = ObjectClass.cnt;
    ObjectClass.objects[ObjectClass.cnt++] = this;
    this.method = ObjectClass_method;
}

ObjectClass.cnt = 0;
ObjectClass.objects = new Array();

function ObjectClass_method () {
    setTimeout('ObjectClass.objects[' + this.id + '].method();', 5000);
}

var obj1 = new ObjectClass('feelinglucky');
obj1.method();不過個人感覺還是上述第一種方法清晰得多。

后記,Javascript 看來的確還是很多需要謹(jǐn)慎對待的地方,尤其是對象機(jī)制。就猶如我之前所說的,Javascript 并不比其他語言要復(fù)雜,但是它也沒有你想象中的簡單。

PS:完成這道題目以后, Google 發(fā)現(xiàn)其他的兄弟早已經(jīng)解決了此類的問題,比如這里還有這里,可以對比參考一下。


--------------------------------------------------------------------------------

更新,感謝 Sheneyan 兄弟的提醒,還有另外的一個辦法就是通過 Closure(閉包) 來實(shí)現(xiàn),代碼如下:

var Obj = function(msg){
   this.msg = msg;
   this.shout = function() {
      alert(this.msg);
      this.waitAndShout();
   }

   var _self = this;
   this.waitAndShout = function() {
       setTimeout(function(){_self.shout()}, 5000);
   }
}

var testObj = new Obj("Hello,World!");
testObj.shout();看來這道題已經(jīng)不能再害人了 :^)

相關(guān)文章

最新評論

洞口县| 无棣县| 绍兴市| 林甸县| 恭城| 剑河县| 咸阳市| 和政县| 定安县| 阜新| 阿拉善左旗| 棋牌| 广德县| 九龙城区| 铜鼓县| 宁晋县| 通许县| 驻马店市| 米林县| 峨山| 涿州市| 扎赉特旗| 五大连池市| 丰县| 宾川县| 惠水县| 石城县| 大渡口区| 昌图县| 米脂县| 鲁山县| 丰镇市| 西盟| 翁源县| 平安县| 交口县| 彰化市| 安多县| 扎鲁特旗| 云梦县| 石泉县|