javascript - JS 对象比较中实际比较的是什么?

标签 javascript

以下代码来自EJS证明具有相同属性的两个对象不一定具有相同的“值”。所以我想知道相等运算符在比较两个对象时实际使用什么值。环顾四周,我发现这是一个“引用”。但这个引用是什么?它是内存地址吗?

let object1 = {value: 10};
let object2 = object1;
let object3 = {value: 10};

console.log(object1 == object2);
// → true
console.log(object1 == object3);
// → false

最佳答案

是的,但是您无法访问内存,因为这是一种内存管理语言。

(澄清:不一定如此,引用可以以不同的方式实现。)

关于javascript - JS 对象比较中实际比较的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49438197/

相关文章:

javascript - 使用 Javascript 的递归方法

javascript - 如何在 Node JS 中编写非阻塞 if 语句?

javascript - 如何在不解析的情况下在javascript中同步包含JSON数据?

javascript - Express.js 静态服务不工作

javascript - Safari 中的 float64array

java - 将数据从 Javascript 传递到 Android WebView

javascript - 使用ajax加载js内容时出现问题

javascript - 使用 Javascript 在 HTML5 Canvas 中随机化 RGB,为每个 fillRect 设置一个新值

javascript - 为什么这个正则表达式不起作用即使它是有效的并且在测试代码上运行良好

javascript - 不要替换现有的 url 正则表达式