【发布时间】:2017-07-08 06:32:36
【问题描述】:
我在控制台中运行了以下几行(一旦加载了 jquery 脚本),并收到了以下结果:
$(this)
> [Window]
$(this) != $(this)
> true
$(this) == $(this)
> false
$(this) === $(this)
> false
而且我不知道要采取什么步骤来弄清楚发生了什么。我的猜测是,有些对象的基于时间的值正在发生变化,但我想知道它是否有所不同。同时我会尝试比较这些值,但我希望有人能理解这里发生了什么。
编辑以解决我不知道 $(arg) 的底层实现这一点。我不知道它返回了一个新的参考对象。因此,我不认为这是“如何确定两个 JavaScript 对象的相等性?”的重复。
【问题讨论】:
-
“我会在此期间尝试比较这些值”您要确定什么?
-
@guest271314 比较以查看所有属性的值是否相等。我现在看到 javascript equals 仅基于相等性进行评估,并且 $(this) 每次调用时都会返回一个新引用。因此,baao,我不认为这是重复的。我不知道 $(this) 每次都向“this”返回一个新的引用对象,而您的链接问题中没有解决这个问题。
-
之前的反对票似乎不公平。这是一个合理的问题。
标签: javascript jquery