簡體   English   中英

javascript onclick調用功能

[英]javascript onclick call to function

我正在學習javascript,正在查看以下代碼:

function foo1 {
  var curObj = this;

    this.foo2 = function() {
         curObj.test = "foo2";
    }

    this.foo3 = function() {
         curObj.test = "foo3";
    }

  // called by
  x.on("click", curObj.foo1)
  x.on("click", curObj.foo2)
}

“ foo2”和“ foo3”函數是重復的,因此我想用類似以下的替換它們:

function setTest(foo) {
  curObj.test = foo;
}

function foo1 {
  var curObj.test;
  x.on("click", setTest(foo));
}

所以我的問題是如何將curObj傳遞給函數setTest,x.onClick = setTest(this,foo)不起作用。 如果我想在函數setTest()中修改其他curObj值,該怎么辦呢? “ this”是對內存地址的引用,還是對一個對象ID的引用?

你們很棒,感謝您願意提供的任何幫助!

我相信您正在尋找的是call()函數

function testThis () {
  console.log(this);
}

testThis.call(curObj) // prints curObj

https://developer.mozilla.org/zh-CN/docs/JavaScript/Reference/Global_Objects/Function/call

暫無
暫無

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

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