簡體   English   中英

使用綁定調用 javascript 函數

[英]Call javascript function with bind

我有這個功能:

$(this.myObject).click(A.bind(this));
function A(){
     //  stuff here
}

我想從第二個函數中調用(綁定這個)。

$(this.myOtherObject).click(B.bind(this));
function B(){
      A();             //  works but does not bind
      A.bind(this);    //  does not work
}

我怎樣才能做到這一點?

您想使用call(this)而不是 bind() 因為 bind() 只是返回該方法。

A.call(this)
function B(){
    A();             //  works but does not bind
    A.bind(this);    //  does not work
}

bind用於創建一個綁定到上下文的新函數(請參閱綁定文檔)。 如果你這樣做,你需要調用新函數:

A.bind(this)();

但是,您應該使用call 方法apply 方法,它們將直接調用具有特定上下文的函數:

A.call(this);
A.apply(this);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM