首先我們先來看一張截圖
代碼注釋
- obj變量中有個(gè)time字段,是Date格式數(shù)據(jù)
- 通過
{...obj}
等到一個(gè)objCopy對(duì)象哥艇,對(duì)象中同樣也有個(gè)time字段 - 通過
JSON.parse(JSON.stringify(obj))
得到一個(gè)jsonObj對(duì)象,對(duì)象中同樣有個(gè)time字段 - obj和objCopy對(duì)象中的time是Date格式艳悔,但是通過
JSON.parse(JSON.stringify(obj))
轉(zhuǎn)換得到的jsonObj對(duì)象中time不再是Date格式的數(shù)據(jù)了集嵌。
總結(jié)
JSON.parse(JSON.stringify())
通過此方法確實(shí)可以實(shí)現(xiàn)一定程度的深拷貝,但是使用此方法凸丸,要注意對(duì)象中的字段如果是Function或者是Date格式的拷邢,深拷貝就會(huì)出現(xiàn)問題了。如果對(duì)象中有Function或者Date格式的數(shù)據(jù)屎慢,盡量還是不要用JSON.parse(JSON.stringify())
此方法來實(shí)現(xiàn)深拷貝瞭稼。