複製陣列:
錯誤方法: 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...