修改 window.setTimeout,使之可以传递参数和对象参数

Posted 连冰华

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改 window.setTimeout,使之可以传递参数和对象参数相关的知识,希望对你有一定的参考价值。

/* 

功能:修改 window.setTimeout,使之可以传递参数和对象参数 
使用方法: setTimeout(回调函数,时间,参数1,,参数n) 
*/ 

var _setTimeout=setTimeout;
window.setTimeout=function(callback,time,params){
   var param=Array.prototype.slice.call(arguments,2);
   var _callback=function(){
   	 callback.apply(null,param);
   }
   _setTimeout(_callback,time);
}

function test(param){
    alert(param);
}
function test2(a,b,c){
	alert(a+b+c);
}

var obj=new Object();
window.setTimeout(test,100,obj);
window.setTimeout(test2,100,obj,1,2);

  

以上是关于修改 window.setTimeout,使之可以传递参数和对象参数的主要内容,如果未能解决你的问题,请参考以下文章

window.setTimeout和window.setInterval的区别,及用其中一个方法记录时间。

JS中的window.setTimeout()详解

重写setTimeout扩展参数

js定时器window.setTimeout和setInterval

setTimeout传参

setTimeout 和 setInterval