原创作者: zdz8207
阅读:3713次
评论:0条
更新时间:2011-05-26
function myFunction(test1,test2) { //用apply传入的参数必须显式声明,按放入顺序取 //alert(extendStr); alert(test1); alert(test2); //绑定property后不用传入也可以通过函数本身调用,但不能用this alert("myFunction.extendStr = " + myFunction.extendStr); } function extendFunction(callbackFunction,extend) { var extendStr = "this is extend string!"; var args = []; if(typeof(extend) == "object") { for (var property in extend) { //绑定property,可以通过函数本身调用 callbackFunction[property] = extend[property]; //把参数值按照顺序放入到数组中,通过apply传入 args.push(extend[property]); } } //绑定property,可以通过函数本身调用 callbackFunction["extendStr"] = extendStr; //把参数值按照顺序放入到数组中,通过apply传入 args.push(extendStr); //动态调用函数,把参数值数组传入 callbackFunction.apply(this,args); } //动态扩展函数并执行,一般用在ajax回调函数的处理中 extendFunction(myFunction,{test1:'aaa',test2:'bbb'});
评论 共 0 条 请登录后发表评论