時給単価UP【3大特典付き】
コーディングテクニック集100選⋙

【解説】配列・オブジェクトの分割代入の使い方【JavaScript】

記事内に広告を含みます

【解説】配列・オブジェクトの分割代入の使い方【JavaScript】

配列やオブジェクトから値を取り出して、個々の変数に代入するのを分割代入といいます。

配列とオブジェクト順に使い方を見ていきましょう。

配列編

const fruit = ['りんご', 'おれんじ', 'もも'];
const [a, b, c] = fruit;

console.log(a); // りんご
console.log(b); // おれんじ
console.log(c); // もも

fruitの中にある配列要素が、「a, b, c」の中にそれぞれ代入されます。

ようは下記の冗長な書き方が、短縮されたって感じですね。

const a = fruit[0];
const b = fruit[1];
const c = fruit[2];

↓↓↓↓

const [a, b, c] = fruit;

こちらのほうがコードが短く、見やすくなりますね。

スプレッド構文が使われた分割代入

ちなみにスプレッド構文が使われたときの分割代入がこちら。

const fruit = ['りんご', 'おれんじ', 'もも'];

const [a, ...b ] = fruit;

console.log(a); // りんご
console.log(...b); // おれんじ もも
【解説】スプレッド構文の使い方【JavaScript】

オブジェクト編

const fruit = {
  name: 'りんご',
  color: '赤色',
}

const { name, color } = fruit;

console.log(name); // りんご
console.log(color); // 赤色

fruitの中にあるオブジェクトの要素が、「name」「color」に代入されます。

ようは下記の冗長な書き方が、短縮されたって感じですね。

const name = fruit.name;
const color = fruit.color;

↓↓↓↓

const { name, color } = fruit;

こちらのほうがコードが短く、見やすくなりますね。

別の変数名を使いたいときは・・

オブジェクトの分割代入にて、別の変数名を使いたいときもあるかと思います。

実はそれ{プロパティ名: 変数名}ように書けば対応可能です。

const fruit = {
  name: 'りんご',
  color: '赤色',
}

const { name: a, color: b } = fruit;

console.log(a); // りんご
console.log(b); // 赤色

ネストされたオブジェクトの場合は・・・

ネストされたオブジェクトの分割代入は、少し書き方が異なります。

代入時にプロパティ名: {変数名}ように書けば対応可能です。

const fruit = {
  name: 'りんご',
  color: '赤色',
  detail: {
    price: 500,
    num: 2,
  }
}

const { name, color, detail: { price, num} } = fruit;

console.log(price); // 500
console.log(num); // 2

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA