1. ホーム
  2. javascript

[解決済み] Javascript (ES6) の中括弧付き const [重複]。

2022-05-17 12:50:47

質問

私はECMAScript 6の初心者ですが、Emberを学ぼうとしているうちに、以下のようなコードスタイルを時折見かけるようになりました。

const {
  abc,
  def
} = Object;

Googleで検索してみると、新しいES6の仕様について説明しているサイトがたくさんあります。これを入力するとコンソールがエラーを出すので、これが現在の実装でないことは分かっています。

このコードは何を意味しているのでしょうか?

アップデイト

このスニペットを バベルのトランスパイラ に貼り付けると、このような結果が返ってきました。

"use strict";

var abc = Object.abc;
var def = Object.def;

これが何を目指しているのか、まだ混乱しています。

どのように解決するのですか?

これは 構造化代入 . 具体的には オブジェクトの再構築 の代入を行います。

もっと冗長な方法で書き直したものを見るといいかもしれません。

const abc = Object.abc;
const def = Object.def;

これは、オブジェクトのプロパティから変数を初期化するための省略記法です。

const name = app.name;
const version = app.version;
const type = app.type;

// Can be rewritten as:
const { name, version, type } = app;

配列でも同じようなことができます。

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

// Can be written as:
const [a, b, c] = items;