function angular.bind()
阿新 • • 發佈:2017-05-22
n) 案例 function dso 定義 區別 som pre name
解釋:返回一個調用self的函數fn(self代表fn裏的this).可以給fn提供參數args(*).這個功能也被稱為局部操作,以區別功能。
格式:angular.bind(self,fn,args);
self:object 對象; fn的上下文對象,在fn中可以用this調用
fn:function; 綁定的方法
args:傳入fn的參數
var obj = { name: "Any" }; var fn = function (Adj) { console.log(this.name + "is a boy!!! And he is " + Adj + " !!!"); }; var f = angular.bind(obj, fn, "handsome"); f();//Any is a boy!!! And he is handsome!!! var t = angular.bind(obj, fn); t("ugly");// Any is a boy!!! And he is ugly!!!
接下來說說對angular.bind的理解吧~
bind顧名思義綁定的意思,那麽假如我們要把A綁到B上,那麽必須又有A和B這2個存在體。這裏需要的2個存在體就一個對象和一個函數。那麽怎麽綁?@野獸的理解是把對象“綁”到函數的this上去執行,這時候fn的this就等於obj了,至於第三個參數,可有可無,看需求,如果函數需要傳入參數,那麽我們可以把angular.bind的第三個參數放上去,這就是傳入fn函數的參數了。
案例中第一種寫法是定義綁定的時候就把fn所需的參數傳進去了,調用的時候直接用,而案例中第二種寫法是先綁定,在調用執行的時候再給fn傳參,效果是一樣的
function angular.bind()