在 js 中,我使用以下代码function m() { console.log(this)}m()这返回当前上下文但是在 ts 中,我使用下面的代码,这个返回 undefinefunction m() { // @ts-ignore console.log(this)}m()我希望在打字稿中使用这个获取当前上下文,怎么办?
4 回答

慕尼黑5688855
TA贡献1848条经验 获得超2个赞
就像其他答案告诉你的那样,这是因为use strict打字稿。为了能够拥有this上下文,您可以(但不应该)使用new关键字。
操场
function m() {
// @ts-ignore
console.log(this);
}
// @ts-ignore
new m();

尚方宝剑之说
TA贡献1788条经验 获得超4个赞
这是因为默认情况下在您的打字稿中使用“use strict”。
如果你在 js 中尝试这个返回相同的 undefined
'use strict';
function m() {
console.log(this)
}
m()
添加回答
举报
0/150
提交
取消