问题标签 [this-keyword]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
251 浏览

javascript - VS Code 没有将关键字“this”链接到当前的 javascript 对象?

在 VS Code 中,我正在用这段代码制作一个 js 文件

当我输入this.并按下时,Ctrl + space我希望 VS Code 会建议我abc()加入其中,this但事实并非如此。

当我输入整行this.abc()然后按F2定义行重命名abc()时,VS Code 也不会重命名所有调用this.abc()

所有 2 个事实都明确表明 VS Code 没有将关键字链接this到当前对象。这种行为很不方便,因为在另一台 PC 上再次安装 VS 会产生链接。

任何经历过这种情况的人都可以给我一行配置来修复 VS Code 吗?


PS1:这只是 VS Code 的糟糕编码体验,而不是 javascript 代码的工作方式!

PS2:我尝试过具有相同行为的 TypeScript。

PS3:我有最新版本的 VSCode 的智能感知,我jsconfig.json看起来像这样

0 投票
0 回答
16 浏览

javascript - this.appendChild (articleItemElement) 上的 this 关键字;参考?

简而言之,我有一个 javascript 文件,其中包含一个数据数组,其中有 4 个对象,每个对象由 4 个属性组成,然后第二个文件是......

===========================================

==================================================== ===

==================================================== ==========

今天我在学习嵌套自定义元素,我很了解程序流程是如何运行的。但是有些部分我还是不明白,比如this line/keyword this在(this.appendChild(articleItemElement);)中做了什么,然后在(articleItemElement.article = article;)我明白了只能赋值数据如果使用访问器属性或 getter / setter 技术,则通过访问 .article 属性通过 JavaScript 语法自定义元素。部分(=文章)的功能是什么?或者如果我错了,请解释该行的功能

我真的希望并感谢是否有人会为我解释

0 投票
0 回答
18 浏览

javascript - 我如何在 javascript 回调中获得对“this”的期望引用

我有套接字连接,我正在尝试从不同的类订阅这个 onMessage 函数,以便我可以获取该特定类中的消息,但我无法在下面的代码中的processTicks函数中调用test()片段。请帮忙。谢谢

0 投票
1 回答
28 浏览

typescript - 如何避免在 Typescript 中丢失对象这个上下文?

我在一个返回方法的类上创建了一个 getter 字段,该方法由一些输入调用。这是方法:

这是包含此方法的类的 getter 字段:

然后我将 getter 传递给另一个类,如下所示:

最后,这是在npcChatState类中调用它的方式:

console.log(this)语句显示this关键字引用另一个对象,而不是我想要的对象。如何在不使用bind()或此别名的情况下解决此问题?

0 投票
1 回答
32 浏览

javascript - 为什么在初始调用后无法再次调用我的函数 i 事件侦听器?

我有以下代码:

HTML

JS

所以在这里,当我单击按钮时,每次addName执行该函数并在 HTML 中打印最大值。

但是当我将行更改为:

然后我最初在浏览器 HTML 上打印 Max,这是预期的,因为我立即调用该函数,我没有省略().

但我不明白为什么在初始打印后,当我点击按钮时,我没有Max再次打印?这是为什么 ?

Max好的,我在 HTML 上进行了初始打印,但是当我单击按钮时,我现在不应该再次打印吗?为什么我没有得到?

0 投票
1 回答
13 浏览

javascript - 为什么我的常规继承函数中的这个关键字没有在我的代码中给出输出

我预期的结果是 Adithye。我知道其他方法,但我想知道为什么这种方法行不通。