函式引數的解構賦值
function add([x,y])
add([1,2]);//3
在上面**中,函式add的引數表明是乙個陣列,但在傳入引數的那一刻,陣列引數就被解構成變數 x 和 y 。
[[1, 2], [3, 4]].map(([a, b]) => a + b);//[3,7]
函式引數的解構也可以使用預設值。
function move( = {})
move(); // [3, 8]
move(); // [3, 0]
move({}); // [0, 0]
move(); // [0, 0]
上面**中,函式move的引數是乙個物件,通過對這個物件進行解構,得到變數 x 和 y 的值,如果解構失敗,x 和 y 的值等於預設值。
function move( = )
move(); // [3, 8]
move(); // [3, undefined]
move({}); // [undefined, undefined]
move(); // [0, 0]
上面**是為函式 move 的引數指定預設值,而不是為 x 和 y 指定預設值,所以才會得到與前一種寫法不同的結果。
undefined會觸發函式引數的預設值。
[1, undefined, 3].map((x = 'yes') => x);// [ 1, 'yes', 3 ]
ES6 變數的結構賦值
基本概念 陣列的結構賦值 物件的結構賦值 基本型別的結構賦值 示例一 陣列的結構賦值let a,b,c 1,2,3 console.log a,b,c 輸出 1 2 3let a b c 1 2 3 console.log 1 2,3 let a console.log a 輸出undefined示...
es6變數解構賦值
es6允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構。解構賦值在實際開發中可以大量減少我們的 量,並且讓我們的程式結構更清晰。陣列的解構賦值 let a,b 1 2 console.log a 1 console.log b 2 上面的 表示,可以從陣列中提取值,按照位置的物件...
ES6變數解構賦值
es6 允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構 es6之前我們申明多個變數需要按照下面的方法 let l a 1 let b 2 let c 3 let d 4 或者 let a 1,b 2,c 3,d 4 現在我們可以更加簡便 let a,b,c,d 1,2,3,4 ...