解構賦值
let ary =[1
,2,3
]//解構賦值:按照乙個資料值的結構,快速解析獲取到其中的內容:
//1、專案中一般都是針對與陣列或者物件進行解構賦值
//***************===陣列解構賦值
let[a]
= ary;
console.
log(a)
;//1
let[
,, c]
= ary;
console.
log(c)
;//3
let[a,
...b]
= ary;
console.
log(a, b)
;//1 [2, 3]
//如果沒有對應值,可以設定預設值
let[a, b, c,d =0]
= ary;
//***************==物件解構賦值
let obj =
;let
= obj;
console.
log(name, age)
;let
= obj;
console.
log(***)
;//=>0
let= obj;
console.
log(ageaa)
;
…的作用
1.剩餘運算子
let array =[12
,23,45
];let[
...arg]
= array;
=>ary.
slice(0
);function
fn(context,
...arg)
let obj =;fn
(obj,10,
20,30)
;
2.展開運算子
console.log(1, ...[2, 3, 4], 5);
// 1 2 3 4 5
es6 展開運算子
展開運算子不能用在物件當中,只能在可遍歷物件中使用 iterables iterables的實現是依靠 symbol.iterator 函式,目前只有array,set,string內建 symbol.iterator 方法,不過es7草案中已經加入了物件展開運算子。可用展開運算子展開陣列,解構陣列...
es6 展開運算子
好記性不如爛筆頭,在學習的過程中,越來越明白這句話的含義 es6的展開運算子使用三個點來表示 使用展開運算子的前提 物件具有 iterator 遍歷器介面 比如陣列,怎麼判斷乙個物件是否具有iterator 遍歷器介面呢,我們檢視物件是否有symbol symbol.iterator 屬性就可以了 ...
es6展開運算子
展開運算子 在es6中用.來表示展開運算子,它可以將陣列方法或者物件進行展開。先來看乙個例子它是如何使用的。const arr1 1,2,3 const arr2 arr1,10,20,30 這樣,arr2 就變成了 1,2,3,10,20,30 arr1中的值完全轉殖到了arr2中 arr1改變a...