首页 > 解决方案 > 关于对象的不可变更新模式:newObject=JSON.parse(JSON.stringify(object))?

问题描述

演示在这里:

let objectTest={
	a:"one",
  b:"two",
  c:"three"
}

let newObject = JSON.parse(JSON.stringify(objectTest))

console.log("hello, I am a new object: ", newObject)
console.log("newObject === objectTest: ", newObject === objectTest)

是否可以制作这样的对象的不可变副本:newObject=JSON.parse(JSON.stringify(object))?

只是为了获取对象的主要属性——出现在 console.log() 上的那个。

我们可以认为这种转变是不可变的吗?

从我的演示中我会说是的,因为它似乎真的创建了一个新对象。

标签: javascriptreactjs

解决方案


的,它是;JSON.parse每次都会创建一个新对象


推荐阅读