【ES6】數組的擴展——擴展運算符


1、擴展運算符【三個點(...)將一個數組轉為用逗號分隔的參數序列】

作用:用於函數調用

function add(x, y) {
  return x + y;
}
const numbers = [2, 6];
add(...numbers) // 8
8

2、...作用【求最大值/拼接數組/復制數組(a2復制a1,改a2不改變a1)/合並數組/將字符串轉化為真正的數組

  • 求最大值
  • 拼接數組
  • 復制數組(a2復制a1,改a2不改變a1)
  • 合並數組
  • 將字符串轉化為真正的數組

(1)最大值 Math.max()

Math.max(...[14, 3, 77])
77

(2)拼接數組,通過push將一個數組添加到另一個數組的尾部

var arr1 = [1,2,3]
var arr2 = [4,5,6]
arr1.push(...arr2);
arr1// [1, 2, 3, 4, 5, 6]

(3)復制數組

var arr1 = [1,2,3]
var arr2 = [...arr1]
console.log(arr1)  // [1, 2, 3]
console.log(arr2)  // [1, 2, 3]

arr2[0]=0
console.log(arr1)  // [1, 2, 3]
console.log(arr2)  //[0, 2, 3]

(4)合並數組(多個)【淺拷貝】

const arr1 = ['1', '2'];
const arr2 = ['3'];
const arr3 = ['4', '5'];
var arr4=[...arr1, ...arr2, ...arr3]
console.log(arr4)// ["1", "2", "3", "4", "5"]

注意:將擴展運算符用於數組賦值,只能放在參數的最后一位,否則會報錯。

const [first, ...rest] = [1, 2, 3, 4, 5];//ok
const [...butLast, last] = [1, 2, 3, 4, 5];// 報錯 const [first, ...middle, last] = [1, 2, 3, 4, 5];// 報錯

(5)字符串(將字符串轉為真正的數組)

var name = 'mike'
console.log([...name])
// ["m", "i", "k", "e"]

  


免責聲明!

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



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