问题标签 [this-pointer]

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 投票
3 回答
1657 浏览

c++ - 具有引用返回类型的 C++ 类成员函数

我是编程和 C++ 的新手。我很困惑参考在这里的不同之处。

下面的代码输出0 5但删除&fromA &GotObj()将输出0 0。为什么第二种情况没有输出0 5

提前致谢。

0 投票
3 回答
12260 浏览

c++ - 返回 *this 作为参考是否安全?

返回对该对象的引用通常用于赋值运算符重载。它还用作命名参数习惯用法的基础,它允许通过调用 setter 方法链来初始化对象:Params().SetX(1).SetY(1)每个方法都返回对 *this 的引用。

但是返回对*this. 如果我们为临时对象调用返回对 this 的引用的方法会怎样:

0 投票
0 回答
70 浏览

javascript - jQuery(this) 奇怪的传播错误?

对于某些人来说,这个问题似乎并不清楚。

想要的效果:

删除将鼠标悬停在其上的元素的类。

问题:

即使我使用 jQuery(this) 指向元素,类删除也会影响具有相同类的所有元素。

我有以下html:

而这个jQuery:

一切正常,直到我到达评论行。移除类和以下操作应用于所有具有类 .rater 的元素,而不是应用于 jQuery(this)。

如果我删除此行,脚本将按预期工作。

我尝试过的关于冲突线的事情:

我尝试以不同方式附加事件的事情

这些行动都没有解决问题。

0 投票
0 回答
183 浏览

c++ - 有没有办法将类的 this 指针保存到成员共享指针中

我有这样的结构:

Foo.h

Foo.inl

基本上我想要做的是使用 add 函数传递任何相同类型的任意对象。一旦元素计数达到 256 个元素并且传入的该类型的智能指针的内部数组被填充,我想保存这个类的实例化对象的当前实例并将其推送到向量中,并且传入的下一个对象属于新的或创建的下一个实例,但是所有后续实例仍然是原始对象的一部分。因此,当每个 256 数组都被填充时,可以说它就像一个链表,但它更像是一种链接效应。我只是坚持保存此实例的当前状态。

0 投票
2 回答
149 浏览

c++ - 是否有必要在以下 C++ 代码中使用“新”运算符?

代码是:

是否需要new在函数中使用运算符copy()或代码为什么使用new运算符?

我是否应该直接返回this指针,如下所示:

0 投票
3 回答
477 浏览

c++ - 引用this指针:GCC vs clang

这是这些 问题的后续。

考虑以下代码:

如果使用 编译-WextraGCC v6.2 和clang v3.9 都会显示警告。

无论如何,使用下面显示的稍微修改的版本,它们的行为会有所不同:

在这种情况下, GCC不给出任何警告,clang给出与前面示例中返回的相同的警告。

警告几乎相同。
它遵循来自 clang 的那个:

3:警告:将引用成员 'this_ref' 绑定到临时值 [-Wdangling-field]

哪个编译器是对的?

我会说 GCC 在这种情况下是错误的,并且我正在打开一个问题,但也许它恰恰相反,因为该语言的一个神秘的角落案例。

0 投票
0 回答
28 浏览

javascript - 回调函数中的“this”不是指调用者,而是指窗口obj?

我知道有数以百万计的关于“这个”的问答,但即使经过大量阅读和思考,我仍然无法理解。考虑这个例子:

(引用 Setfanov 的“Javascript 模式”)

...对象“this”将引用 GLOBAL OBJECT,因为 findNodes() 是一个全局函数...

但是“this”不应该与调用它的人绑定,在这种情况下是 findNodes() 函数吗?

0 投票
2 回答
63 浏览

c++ - 我无法将类变量用作同一类函数的默认参数

我很清楚第 7 行是无效的。但我想使用类变量作为 method(apple) 的默认参数。

0 投票
1 回答
151 浏览

c++ - 在继承 std::vector 的类中使用 operator[]

不工作



但是,替换*this[0]at(0)使其工作。我发现它*this[0]返回一个类型的对象A而不是intat(0)这样的对象非常奇怪。在这个例子中他们不应该以同样的方式工作吗?

0 投票
1 回答
345 浏览

javascript - 在 http 请求的响应中访问“this”| 节点.js

我正在研究 Alexa 技能并使用 Node.js 编写我的 lambda 函数。我还使用Alexa SDK来处理 Alexa 的请求和响应。我面临的问题是我无法访问“此指针”作为响应。代码如下:

错误:找不到this.response

仅供参考: handler['hi'] 是一个侦听器,并从 Alexa 自动调用。我可以在请求块之外访问这个指针。

我在 SO 上阅读了不同的答案,但没有一个回答我的问题。请帮忙,我怎样才能在响应中访问“this”。