首頁技術文章正文

怎樣利用擴展運算符合并數(shù)組?

更新時間:2023-08-23 來源:黑馬程序員 瀏覽量:

擴展運算符和剩余參數(shù)的作用是相反的,擴展運算符可以將數(shù)組或對象轉換為用逗號分隔的參數(shù)序列。擴展運算符服3個點“…”表示。下面介紹擴展運算符的使用方法進行詳細講解。

擴展運算符的語法

下面通過代碼演示擴展運算符在數(shù)組中的使用,示例代碼如下:

<script>
   let ary = [1, 2, 3];
   //...ary相當于1,2,3
   //輸出結果:123
   console.log(..ary);
   // 等價于
   console.log(1, 2, 3); //輸出結果:1 2 3
</script>

上述代碼中,第2行代碼使用let關鍵字聲明了一個ary數(shù)組,數(shù)組中有3個值,分別為1、2、3。第4行代碼在數(shù)組變量名ary的前面添加3個點“…”,表示將數(shù)組元素拆分成以逗號分隔的參數(shù)序列。console.log0方法可以接收多個參數(shù),多個參數(shù)以逗號分隔,表示一次輸出多個內(nèi)容。

使用擴展運算符將ary數(shù)組拆分成以逗號分隔的參數(shù)序列后,又將參數(shù)序列放在了console.log()方法中,此時參數(shù)序列中的號會被當成console.log0方法的參數(shù)分隔符,所以輸出結果中沒有逗號。

利用擴展運算符合并數(shù)組

擴展運算符可以用于合并數(shù)組,通常有以下兩種方法,下面分別進行講解。首先演示合并數(shù)組的第l種方法,示例代碼如下:

<script>
  let aryl = [1, 2, 3];
  let ary2 = [4, 5, 6];
  // …aryl               // 表示將ary1數(shù)組拆分成1,2,3
  // …ary2               // 表示將ary2數(shù)組拆分成4,5,6
  let ary3 - (… hmyl, …ary2);
  console.log(ary3);      // 輸出結果:(6)[1,2,3,4,5,6]
</script>

上述代碼中,第2行代碼使用let關鍵字聲明了一個aryl數(shù)組,數(shù)組中有3個值,分別為1、2、3。第3行代碼聲明了一個arny2數(shù)組,其中有3個值,分別為4、5、6。第6行代碼聲明了一個ary3數(shù)組,其中存儲了aryl和ary2的參數(shù)序列,這樣ary3數(shù)組中就包括aryl數(shù)組和ary2數(shù)組中的值。第7行代碼使用console.log()方法在控制臺中查看輸出結果。

下面通過代碼演示合并數(shù)組的第2種方法,示例代碼如下。

<script>
  let aryl = [1, 2, 3];
  let ary2 = [4, 5, 6];
  aryl.push(...ary2);
  console log (ary1); //輸出結果:(6)[1,2,3,4,5,6]
</script>

上述代碼中,第4行代碼的push0方法用于將元素追加到數(shù)組中,這個方法可以接收多個參數(shù),并且可以一次將多個參數(shù)追加到數(shù)組中,參數(shù)之間用逗號進行分隔。因為不能將ary2數(shù)組本身傳遞給push0方法,所以可以使用擴展運算符將ary2數(shù)組中的元素拆分成以逗號分隔的參數(shù)序列,然后將參數(shù)序列直接放到push0方法中,也就是使用aryL.push(.ary2)方法將ary2數(shù)組中的元素追加到aryl數(shù)組中,實現(xiàn)數(shù)組的合并。


分享到:
在線咨詢 我要報名
和我們在線交談!