天天看點

vue、js采坑之資料深拷貝

  • 在vue或js頁面傳遞資料的過程中,傳遞資料的引用位址并不會改變,是以當我們改變一些資料時,源 資料也會随之改變。可是有很多情景,我們改變傳遞的資料,并不需要源資料值發生變化,這時我們就需要對資料進行處理,使資料的引用位址發生變化,即重新生成一個資料拷貝。
  • 使用JSON方法将資料解析成字元串,之後再轉換成JSON對象資料,obj是傳遞的對象
JSON.parse(JSON.stringify(obj))      
  • 列子:
let a = {
          name: "張三"
        }
        let obj1 = a;
        let obj2 = a;
        console.log("obj1", obj1) //張三
        console.log(obj2) //張三
        obj2.name = "李四"
        console.log("obj1", obj1) //輸出李四