ECMA Script6(JavaScript)でデストラクチャリング(分割代入)という記述方法

ECMA Script6(JavaScript)でデストラクチャリング(分割代入)という記述方法

ECMA Script6(JavaScript)でデストラクチャリング(分割代入)という記述方法についてです。

以下のような記述をよく見ます。

let obj = {key:'aaa',val:'bbb'};
obj.count = 1;
let {val,key} = obj;

console.log(key);
console.log(val);

これはデストラクチャリング(分割代入)と言って、オブジェクトのキーが同じなら分割して代入することができます。順序は関係ありません。

結果は以下のようになります。

aaa
bbb

ECMA Script6(JavaScript)でデストラクチャリング(分割代入)という記述方法

引数をオブジェクトで渡す

関数の引数にオブジェクトを渡すと、これも分割代入になります。

関数の引数をオブジェクトにして、キーを指定します。

function sample({a,b}){
  return a + b;
}

const params = {
  b:3,
  a:4,
  c:5
};
console.log(sample(params));

cのような変数は無視されます。逆にaまたはbが指定されていない場合はundefinedとなります。

function sample({a,b}){
  return b;
}

const params = {
  a:4,
  c:5
};
console.log(sample(params));

結果はundefinedとなります。

コメント

タイトルとURLをコピーしました