JSON.parse()和JSON.stringify()實現深拷貝:
實際開發中,如果怕影響原數據,我們常深拷貝出一份數據做任意操作,其實使用JSON.stringify()與JSON.parse()來實現深拷貝是很不錯的選擇。
但是當拷貝的數據為undefined,function(){},...拷貝時會為空,這是就需要采用遞歸拷貝。
使用JSON實現拷貝時,注意拷貝數據,看是否適合使用。
//深拷貝 function deepClone(data) { let _data = JSON.stringify(data), dataClone = JSON.parse(_data); return dataClone; }; //測試 let arr = [1,2,3], _arr = deepClone(arr); arr[0] = 2; console.log(arr,_arr)//[2,2,3] [1,2,3]