久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      示例JS 數(shù)組和對象的深拷貝操作

      示例JS 數(shù)組和對象的深拷貝操作

      本文實例講述了JS 數(shù)組和對象的深拷貝操作。分享給大家供大家參考,具體如下:

      一.數(shù)組的深拷貝

      let arr = [  undefined,  function(){   console.log(123);   },  true,  null,  {   name:"123",   age:23  } ]; // arr作為拷貝對象

      1. Array.from()

      Array.from()能將一個類數(shù)組轉(zhuǎn)化成一個真正的數(shù)組,因此它返回的是一個新數(shù)組。

      let arr1 = Array.from(arr); arr[0] = 2; console.log(arr1); // [ undefined, [Function], true, null, { name: '123', age: 23 } ]

      2. Object.assign()

      let arr1 = Object.assign([], arr) arr[0] = 2; console.log(arr1); // [ undefined, [Function], true, null, { name: '123', age: 23 } ]

      此方法也可用作對象的深拷貝

      3. Slice()

      let arr1 = arr.slice(0); arr[0] = 2; console.log(arr1); // [ undefined, [Function], true, null, { name: '123', age: 23 } ]

      4. Concat()

      let arr1 = arr.concat(); arr[0] = 2; console.log(arr1); // [ undefined, [Function], true, null, { name: '123', age: 23 } ]

      5. 擴展運算符深拷貝

      // let [...arr1] = arr; // 這兩種都可以 let arr1 = [...arr]; arr[0] = 2; console.log(arr1); // [ undefined, [Function], true, null, { name: '123', age: 23 } ]

      此方法也可用作對象的深拷貝

      二.對象的深拷貝

      let obj = {  name: "a",  age: 20,  sex: false,  user: {   a: 20,   n: "b"  },  f: function(){   return 1;  },  u: undefined,  n: null }

      用擴展運算符和Object.assign()方法可以深拷貝對象

      let obj1 = Object.assign({}, obj) obj[age] = 2; console.log(obj1); // let obj = { name: "a", age: 20, sex: false,user: {a: 20,n: "b},f: function(){return 1;},u: undefined,n: null}

      相關(guān)學習推薦:javascript視頻教程

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號