Javascript Function對象擴(kuò)展之延時執(zhí)行函數(shù)
不就利用window對象的setTimeout方法嗎?Bingo,一點沒錯!如果你在一個應(yīng)用里面常常要“延時執(zhí)行某某函數(shù)”,那末基于DRY的原則,可以針對Function全局對象進(jìn)行擴(kuò)展,為函數(shù)增加一個延時方法如delay,這樣會讓你的代碼更簡潔有效。
擴(kuò)站Function對象增加delay方法如下:
Function.prototype.delay=function(this1,timeout){
this1=this1||null;
timeout=timeout||0;
var _this=this;
var args=[];
//獲取參數(shù),注:第1、第2個參數(shù)是保留參數(shù)
switch(arguments.length){
case 1:
timeout=parseInt(arguments[0]);
timeout=isNaN(timeout)?0:timeout;
timeout=timeout<0?0:timeout;
break;
default:
for(var i=0;i<arguments.length;i++){
if(i>1){args.push(arguments[i]);};
};
break;
};
var proxy=function(){
_this.apply(this1,args);
};
return window.setTimeout(proxy,timeout);
};
在firefox的firebug插件的控制臺下面測試下,代碼如:
var xx=function(n){
this.name=n;
};
xx.prototype.hi=function(a,b){
console.log(this.name+"-"+a+"-"+b);
};
var xx1=new xx("levin");
var t=xx1.hi.delay(xx1,1000,"cocoa","yoyo");
xx1.hi("guluglu","jigujigu");
- 關(guān)于javascript function對象那些迷惑分析
- 淺談javascript對象模型和function對象
- JavaScript學(xué)習(xí)筆記之Function對象
- JavaScript學(xué)習(xí)小結(jié)(一)——JavaScript入門基礎(chǔ)
- 淺談Javascript中Object與Function對象
- 每天一篇javascript學(xué)習(xí)小結(jié)(基礎(chǔ)知識)
- 每天一篇javascript學(xué)習(xí)小結(jié)(Array數(shù)組)
- 每天一篇javascript學(xué)習(xí)小結(jié)(Boolean對象)
- 每天一篇javascript學(xué)習(xí)小結(jié)(Date對象)
- 每天一篇javascript學(xué)習(xí)小結(jié)(Function對象)
相關(guān)文章
客戶端 使用XML DOM加載json數(shù)據(jù)的方法
我們?nèi)〕鰯?shù)據(jù)后可以以json的形式傳到前端處理,也可以以Xml Dom的形式傳到前端進(jìn)行處理。下邊例子是利用Jquery處理XML Dom的例子。2010-09-09JS實現(xiàn)獲取word文檔內(nèi)容并輸出顯示到html頁面示例
這篇文章主要介紹了JS實現(xiàn)獲取word文檔內(nèi)容并輸出顯示到html頁面,結(jié)合實例形式分析了JavaScript使用ActiveXObject組建操作word文件的相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2018-06-06javascript讀取xml實現(xiàn)javascript分頁
這篇文章主要介紹了javascript讀取xml數(shù)據(jù)對其實現(xiàn)javascript分頁效果,大家參考使用吧2013-12-12javascript利用初始化數(shù)據(jù)裝配模版的實現(xiàn)代碼
實現(xiàn)一個通用方法,使用初始化數(shù)據(jù)來裝配模版。需要的朋友可以參考下。2010-11-11