JSON.parse(JSON.stringify()) 進行深復制有什么缺陷


    let syz = {
      name: '孫藝珍',
      age: 20,
      //
      birthday: new Date('1996/01/01'), // Date日期自動用 toJSON() 或 toISOString() 轉成了字符串
      // NaN和Infinity格式的數值會被當做是null
      inf: Infinity,
      NaN: NaN,
      // undefined、Symbol類型、函數會被忽略
      love: undefined,
      sym: Symbol('小明同學'),
      say() {
        console.log('說話')
      },
      obj: { a: 1, b: 2 },
      reg: /(0-9)/ // 正則會轉成空對象 {}
    }
    // syz.z = syz 此時用JSON轉會報錯

    let syz1 = JSON.parse(JSON.stringify(syz))
    let syz2 = _.cloneDeep(syz)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM