Javascript 为什么使用JSON.parse从字符串获取的对象不等于使用JSON.stringify转换的原始对象?
有人能解释一下为什么下面的代码会在控制台上记录为false吗Javascript 为什么使用JSON.parse从字符串获取的对象不等于使用JSON.stringify转换的原始对象?,javascript,json,string,object,Javascript,Json,String,Object,有人能解释一下为什么下面的代码会在控制台上记录为false吗 const object = { title: 'object', data: 2 }; localStorage.setItem('object', JSON.stringify(object)); console.log(object === JSON.parse(localStorage.getItem('object'))); 这是因为通过使用,然后将对象类型转换为字符串,这是一个新的对象类型,这意味着它是一个新的对象,在内
const object = { title: 'object', data: 2 };
localStorage.setItem('object', JSON.stringify(object));
console.log(object === JSON.parse(localStorage.getItem('object')));
这是因为通过使用,然后将对象
类型
转换为字符串
,这是一个新的对象
类型,这意味着它是一个新的对象,在内存中有自己的独立引用,通过比较对象
可以比较它们在内存中的引用,这就是它们不相等的原因。内存中的两个对象如果位于内存中的不同空间,则它们不相等。这可能会有帮助: