2017-02-05 8 views
1

次のJS(es6)コードでは、中括弧内の変数はコロンで何が行われていますか?ES6での破壊の混乱

const { foo: bar } = ... 

通常、これはオブジェクトのように右から左に変数を代入しています。オブジェクトでは、変数barをオブジェクトキーfooに割り当てますが、ここでは起こっていないようです。これは何ですか?

+0

はい、それは破壊的です。 – loganfsmyth

+0

@loganfsmyth、そこに何が起こっているのか教えていただけますか? –

答えて

5

それは一種のオブジェクトを宣言するの反対のように構造化代入を考えるのがベストですので、どこ

const hidingSpotConnection = ... 
const obj = { connectionType: hidingSpotConnection }; 

hidingSpotConnection変数から値を含むキー connectionTypeでオブジェクト objになるだろう
const { connectionType: hidingSpotConnection } = ... 

は、connectionTypeキーの値をとり、hidingSpotConnectionという変数に格納します。

+0

ありがとうございました。 –

+0

そのような優雅な説明はすぐに主題をdemystified。ありがとう。 –