ES6的深拷贝
lodash中的_.clone(obj, true)等價于_.cloneDeep(obj)?兩個方法,lodash花了大量的代碼來實現 ES6 引入的大量新的標準對象.
var obj = { a: {a: "hello"}, b: 33 }; var newObj = _.cloneDeep(obj); console.log(newObj)// { a: {a: "hello"}, b: 33 }var obj = { a: {a: "hello"}, b: 33 }; var newObj =_.clone(obj, true); console.log(newObj)//{ a: {a: "hello"}, b: 33 }
JSON.parse(JSON.stringify(obj))是最簡單粗暴的深拷貝,能夠處理JSON格式的所有數據類型,但是對于正則表達式類型、函數類型等無法進行深拷貝.
? ? ? ?不管這個對象原來是什么,在深拷貝之后都會變成Object
var obj = { a: {a: "hello"}, b: 33 }; var newObj = JSON.parse(JSON.stringify(obj)); console.log(newObj);//{ a: {a: "hello"}, b: 33 }
轉載于:https://www.cnblogs.com/LFxanla/p/11134509.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
- 上一篇: 【金融】银行有什么分类
- 下一篇: Maven install 中文乱码问题