javascript - 在构造函数对象中访问 this

标签 javascript

我正在尝试在原型(prototype)构造函数中访问this(我想这就是它的名字?)。

SomethingUseful.prototype = {
    constructor: SomethingUseful,
    init: init,
    someFunction: someFunction,
    mouseDownHandler: mouseDownHander.bind(this)
}

但是this等于window。所以我尝试做 bind(SomethingUseful) ,当我在 mouseDownHandler 中使用 this 时,整个函数以纯文本形式注销,所以我可以不要在实际的 mouseDownHandler 函数中使用 this 中的内容。

constructor 函数中访问 SomethingUsefulthis 的正确方法是什么(同样,我可能把名字弄错了,如果我做了,请纠正它,或者在评论中让我知道)?

最佳答案

Instead of doing this: this.mouseDownHandler = mouseDownHander.bind(this); I want to add it in SomethingUseful.prototype = {.

这是不可能的。当您尝试将函数绑定(bind)到实例时,没有可以将该函数绑定(bind)到的实例。只有在调用构造函数时或之后才会有一个实例来绑定(bind)该函数。

换句话说:您试图在披萨送达之前吃掉它。

<小时/>

相关:How to access the correct `this` context inside a callback?

关于javascript - 在构造函数对象中访问 this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41047711/

相关文章:

javascript - 如何在嵌套映射函数中进行并发异步调用

javascript - 如何根据文本字段中的用户输入更改 iframe URL?

javascript - ASP.NET 转换为完全基于 AJAX 的应用程序

javascript - 使用三元运算符处理三种不同的情况

javascript - 意外的 token ,预期的},即使所有的大括号都有匹配对

javascript - Z-index 'breaks' 幻灯片点击按钮

javascript - 在 react native 中从 sqlite 存储返回查询结果时未定义

javascript - 如何在 WebRTC 通话期间锁定视频大小?

javascript - Xcode 10 更新后 React Native 无法正常工作

javascript - 捕捉 onclick adsense 事件?