1. ホーム
  2. javascript

[解決済み] 既に定義されている変数にオブジェクトをデストラクチャする方法は?重複

2022-04-22 18:39:40

質問

以下は、構文エラーになります。

let source,
    screenings,
    size;

source = {
    screenings: 'a',
    size: 'b'
};

{
    screenings,
    size
} = source;

期待される結果

screenings should be equal to 'a'
size should be equal to 'b'

解決方法は?

を使用する必要があります。 宣言とは別に の構文があります。

({
    screenings,
    size
} = source);

Babel REPL の例

リンク先のdocsから。

代入文の周りの( .. )は、次のような場合に必要な構文です。 宣言のないオブジェクトリテラルによる構造化代入を使用した場合

を再宣言することはできないので、当然これを使う必要があります。 let という変数があります。もしあなたが var を再宣言すればよいのです。 var { screenings, size } = source;