陣列解構賦值:獲取等號右邊的值,賦給等號左邊對應位置的變數
完全解構
let
[a,b,c]
=[1,2,3]
;console.log(a,b,c)
;//控制台輸出1 2 3
不完全解構:等號左邊的模式只匹配右邊的一部分
let
[a,b]
=[1,2,3]
;console.log(a,b)
;//控制台輸出 1 2
解構不成功,返回undefined
let
[def,foo]=[
];console.log(def,foo)
;/f/控制台輸出undefined undefined
可以指定預設值
let
[a,b=1]
=[2]
;//給b設定預設值
console.log(a,b)//控制台輸出2 1
物件解構賦值:獲取等號右邊的值,找到等號左邊同名屬性(匹配的模式),賦給對應的變數
let
=;//模式匹配 a是模式 a1是變數 a匹配等號右邊同名屬性a
console.log(a,b)
;//控制台輸出 1 2
物件解構的預設值
let
=console.log(a,b)
;//返回 3 4
注:undefined觸發預設值,null不會觸發預設值
陣列是特殊的物件,可以將陣列的位置索引作為屬性名,按照物件解構方式,解構陣列。
let
=[1,2]
;console.log(a,b)
;//控制台輸出 1 2
字串解構賦值:將字串轉換成類似陣列的物件,擁有length屬性
let
[a,b,c]
='hello'
;//獲取字串元素的時候,表現像陣列
let=
'hello'
;//獲取字元長度的時候,表現像物件
console.log(len)
;//控制台輸出5
console.log(a,b,c)
;//控制台輸出h e l
數字和布林解構賦值:將值轉成物件,呼叫包裝
函式引數解構賦值:
function add(
[x,y]
)console.log(add(
[1,2]
));//控制台輸出 3
ES6 解構賦值
陣列的解構賦值 let a,b 12,13 let a,b,c d 13,15,16 let a,b c 78,12 23 let x,y 1,3,5 x 1,y 3 let x,y,z a x a,y undefined z let h,b 1,2,3,4 1,2,3,4 預設值 let x tr...
ES6解構賦值
一 基本用法 解構 destructuring 按照一定的模式,從陣列或者物件中提取值,對變數進行賦值。let par1,par2,par3 1,2 console.log par1,par2,par3 1 2 不完全解構時par3對值為undefined 解構賦值允許指定變數對預設值。let pa...
es6解構賦值
coding changes the world accumulating makes yourself 主要從三個方面講述 陣列式的解構賦值 物件式的解構賦值 函式中的解構賦值 preface 現今的變數宣告語法十分的直接 左邊是乙個變數名,右邊可以是乙個陣列 的表示式或乙個物件 的表示式,等等。...