ES2015(ES6)以降 の JavaScript でオブジェクトのキーに変数を使う

次のように JavaScript でオブジェクトのキーに変数を使おうとしても当然ですが変数は展開はされません。

const key   = "age";
const value = 14;

const obj = { key : value };
console.log(obj);
// => { key: 14 }

通常このような場合は obj[key] = value みたいにする必要がありました。

const key   = "age";
const value = 14;

const obj = {};
obj[key] = value;
console.log(obj);
// => { age: 14 }

ES2015(ES6)以降

ES2015(ES6)以降ではオブジェクトのキーを定義する時に [key] とすることで変数が展開されるようになります。

const key   = "age";
const value = 14;

const obj = { [key] : value };
console.log(obj);
// => { age: 14 }

これは便利そう。
最近の JavaScript はよく知らないので便利な文法は覚えていきたい。