javascript - 引用Javascript中的对象调用函数

标签 javascript events reference

我在 JS 中有一个临时事件系统,附件如下所示:

events.attach(events.NEW_TASK,this.update);

其中 this.update 是回调/处理程序/函数。问题是,当调度程序尝试调用此处理程序时,它会丢失原始上下文。如何将处理程序与调用附加函数的对象的上下文绑定(bind)在一起,而不将 this 作为参数传递并使用它?

编辑:我还应该提到,它在某种程度上是一个框架,因此对于其他开发人员来说必须简单,因此最好不需要将上下文存储在另一个变量中。

最佳答案

另一个选项,使用 Function.prototype.bind方法,新的一部分ECMAScript Standard :

events.attach(events.NEW_TASK, this.update.bind(this));

关于javascript - 引用Javascript中的对象调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2902385/

相关文章:

java - Java返回给定索引处的栈元素,而不修改原始Stack

c++ - 现在对临时工程的非 const 引用?

javascript - Facebook 是如何检测到我的浏览器窗口需要关闭的?

javascript - 如何使用 office-js 在 Outlook 中插入嵌入图像

c# 两种形式之间的事件处理

jquery - Drop 事件未在 jQuery UI 中触发。

c++ - 对我的 BFS tile 类中的引用和指针感到困惑

javascript - 是否可以使用数据类型 "data:application/vnd.ms-excel"写入多个工作表

javascript - 在 JavaScript 中解码 url 时遇到问题

c# - 编辑模式下 DataGridView C# 行中的默认值