欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript bind綁定函數(shù)代碼

 更新時間:2010年01月05日 13:58:02   作者:  
bind函數(shù),顧名思義,用于為調(diào)用函數(shù)綁定一個作用域,因為this很容易跟丟它原來所在的作用域,直接指向頂層的window對象。
具體結(jié)論可參見《javascript下動態(tài)this與動態(tài)綁定實例代碼》。本文專注設(shè)計一個無侵入的綁定函數(shù)。

基于不擴展原生對象的原則,弄了這個bind函數(shù)(dom為作用域),用法與Prototype框架的bind差不多。
復(fù)制代碼 代碼如下:

dom.bind = function(fn,context){
//第二個參數(shù)如果你喜歡的話,也可以改為thisObject,scope,
//總之,是一個新的作用域?qū)ο?
if (arguments.length < 2 && context===undefined) return fn;
var method = fn,
slice = Array.prototype.slice,
args = slice.call(arguments, 2) ;
return function(){//這里傳入原fn的參數(shù)
var array = slice.call(arguments, 0);
method.apply(context,args.concat(array))
}

用法:第一個參數(shù)為需要綁定作用域的函數(shù),第二個為window或各種對象,其他參數(shù)隨意。

另一個例子:

相關(guān)文章

最新評論