展開運算子

2021-10-23 00:00:38 字數 854 閱讀 7048

複製陣列:

錯誤方法: arr2 = arr1

console.log(arr1===arr2) true

傳統方法:

let arr3 = arr1.concat()

console.log( arr1 ===arr3 ) false

新方法:

let arr1=[1,2,3];

let arr2=[4,5,6,…arr1];

console.log(arr1 === arr2); false

注意:注意展開運算子只能達到淺層轉殖(複製),因為是淺層轉殖,所以引用值還是會互相影響

複製物件:

let obj=

//傳統方法

let new_obj={};

for(let key in obj)

//新方法(可以同時新增新屬性)

let new_obj=;

console.log(new_obj)//結果:

用於函式引數:

用作函式引數的時候,稱為rest引數,函式引數不確定的時候,每個函式最多只能宣告乙個不定引數,並且一定要放在末尾。rest引數用於獲取函式多餘引數,這樣就不需要使用argument物件。rest引數搭配的變數是乙個陣列,該變數將多餘的引數放進陣列中

用於解構賦值:

let [ a, …b ] = [ 7, 8, 9 ]

console.log( a,b ) // 7, [ 8,9 ]

分解字串

展開運算子可以將乙個字串分解成乙個字元陣列

const hey = 』 hey 』

const arr = [ …hey ] // [ 』 h ', 』 e ', 』 y 』 ]

Kotlin展開運算子

當你需要傳遞乙個陣列引數時,在kotlin中需要你解包陣列,以便每個陣列元素在函式中能作為單獨的引數來呼叫。我們使用 號來展開這個陣列。fun main one,two,three,four 下面這為錯誤的 fun main type mismatch inferred type is listbu...

展開運算子 object

如果只說展開運算子,可能小夥伴會一臉懵逼,你在說啥啊?但是如果換成另一種說法 object 那麼小夥伴可能恍然大悟 噢 你說 es6 的這個表示式啊!函式呼叫 myfunction iterableobj 字面量陣列構造或字串 iterableobj,4 hello 6 構造字面量物件時,進行轉殖或...

展開運算子 的使用

1.展開陣列 let arr1 1,2,3 let arr2 4,5,6 console.log arr1 1 2 3 合併陣列 let arr3 arr1,arr2 console.log arr3 1,2,3,4,5,6 2.不能直接展開物件,需在花括號包裹下 let obj console.l...