【问题标题】:Why is an object fetched from a string using JSON.parse not equal to the orignal Object converted using JSON.stringify?为什么使用 JSON.parse 从字符串中获取的对象不等于使用 JSON.stringify 转换的原始对象?
【发布时间】:2020-07-17 23:07:12
【问题描述】:

有人能解释一下为什么下面的代码会在控制台中记录错误吗?

const object = { title: 'object', data: 2 };
localStorage.setItem('object', JSON.stringify(object));
console.log(object === JSON.parse(localStorage.getItem('object')));

【问题讨论】:

标签: javascript json string object


【解决方案1】:

这是因为通过使用 JSON.stringify 然后 JSON.parse 您正在将您的 Object type 转换为 string 这是一个新的 Object 类型,这意味着它是一个 new 对象它在内存中是独立的引用,通过比较objects,您可以比较它们在内存中的引用,这就是它们不相等的原因。

【讨论】:

    猜你喜欢
    • 2020-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    • 2013-04-09
    • 2023-03-18
    • 2023-02-23
    相关资源
    最近更新 更多