【发布时间】:2023-03-24 10:52:01
【问题描述】:
考虑这段依赖 JQuery 库的 TypeScript 代码:
class Alpha {
public foo() {
$('.ca').click(() => {console.log(this)});
$('.cb').click(function () {console.log(this)});
}
}
假设$('.ca') 和$('.cb') 指的是两个按钮。
在 Alpha 对象上调用 foo 后,我们看到“.ca”的单击处理程序打印 Alpha 对象,而“.cb”的单击处理程序打印由 $('.cb') 标识的按钮。
this 的这两种不同解释都有用。但是,如果我想在处理程序中使用 both 版本的this,我该怎么办?换句话说,我想同时访问 Alpha 对象和处理程序中的“.cb”按钮。
编辑
澄清一下:我应该强调的是,在我使用=> 表示法的情况下,我对访问“.ca”按钮的方式特别感兴趣。
用户 Matt U 在回答我的问题时指出了这一点。
【问题讨论】:
-
我已经用
javascript标签替换了typescript标签,因为这个问题与打字稿无关。
标签: javascript this