|
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
基于不擴展原生對象的原則,弄了這個bind函數(shù)(dom為作用域),用法與Prototype框架的bind差不多。
復制代碼 代碼如下:
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ù)隨意。
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
另一個例子:
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
JavaScript技術(shù):javascript bind綁定函數(shù)代碼,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。