调用对象内的函数,错误:未捕获的TypeError:this.showValue不是函数

时间:2019-01-02 11:55:41

标签: javascript

我想更好地了解JavaScript对象,但无法解决此错误。在单击时,它应该调用ob.say函数,该函数应同时显示两个警报消息,但最终我收到此错误“ Uncaught TypeError:this.showValue不是函数”。

var ob = {
 showValue: function() {
 alert("hello world");
},
 say: function() {
  this.showValue();
  alert("I said hello world!!!");
 }
}
document.addEventListener('click', ob.say);

1 个答案:

答案 0 :(得分:0)

您必须bind使用函数,以便this中的say是正确的对象:

document.addEventListener('click', ob.say.bind(ob));