web-dev-qa-db-ja.com

ES6でオブジェクトまたは配列の構造化代入を使用するときにconstとletを組み合わせる方法は?

例:

const foo = {a: "A", b: "B"}
const {a, b} = foo

bletを使用した変数にしたい場合はどうなりますか?

19
PhilipGarnero

変数の宣言を1行で区別できないようです。ただし、取得する変数によっては、2行に分割して別の変数宣言を使用することもできます。

const { a } = foo; 
let { b } = foo;
19
kind user

Constで配列破壊代入を使用したい場合は、省略を使用できます。例を考えてみましょう:

const [a, b, c] = foo;

'a'をletに、 'b'および 'c'をconstにしたい場合は、次のように書くことができます。

let [ a ] = foo;
const [, b, c] = foo;

別の方法は、配列がオブジェクトであるという事実を使用することです。したがって、次のように書くこともできます。

let [a] = foo;
const {1: b, 2: c} = foo;

破壊に関するすべてはここにあります: http://exploringjs.com

11
drazewski