ES6 - 変数代入の解体

解体変数の代入

特定のパターンに従って定義されることES6、解体と呼ばれる変数の配列とオブジェクト値、割り当てからの抽出ができます。

最初の直接割り当て

let a = 0;let b = 1;let c = 2;复制代码

いずれか一方のために割り当てられた二番目の配列構造

let [d,e,f] = [3,4,5]复制代码

アレイパターンは、割り当てモードと一致することが

let [d,e,f] = [3,4,5]复制代码

let [d,e,f,[g,h]] = [3,4,5,[6,7]]复制代码

デフォルト値

let [fun = true] =[];
console.log(fun)   // true复制代码

let [aa,bb = '我是bb'] =['你好'];console.log(aa,bb)    // 你好 我是bb复制代码

let [aa,bb="我是bb"]=['你好',undefined];
console.log(aa,bb)    // 你好 我是bb复制代码

let [aa,bb="我是bb"]=['你好',null];
console.log(aa,bb)    // 你好 null复制代码

未定義のデフォルト値は、まだ、何に相当します

それはBB、NULL値がnullで表し、デフォルト値に行きませんでしたが、構造はnullです

1対1の対応のようなオブジェクト構造の割り当て、キーと値のペア。

let {  cc, dd} = {  'cc': '我是cc',  'dd': '我是dd'}console.log(cc, dd)复制代码

1対1の対応への鍵のように。

DDは、DDに対応する、CC CCを対応

括弧を使用します

それを分解する前には、変数を定義する場合、この時間は、あなたが問題を分解します。

let foo;
{foo} ={foo:'圆括号的使用'};
console.log(foo);  报错复制代码

プラス解体外文の変更は、それに括弧します

let foo;
({foo} ={foo:'圆括号的使用'});
console.log(foo);  复制代码

文字列構造解体する文字列この時点で文字列配列のようなオブジェクトに変換される、ためです。

const [a,b,c,d,e,f]="kaikai";
console.log(a);
console.log(b);
console.log(c);
console.log(d);
console.log(e);
console.log(f);复制代码


ます。https://juejin.im/post/5d0a0810e51d45590a445b43で再現

おすすめ

転載: blog.csdn.net/weixin_34148340/article/details/93173016