2016-09-28 5 views
0

私は2つの変数、attribute(例えば「タイプ」)とvalue(例えば「カー」)を持っています。私はキーが属性であるオブジェクトを作成したい(そしてその値は値です)。このように:{"type": "car"}可変キーを使ってオブジェクトを初期化する明確な方法はありますか?

私は

let obj = { attribute: value } 

を行うと、私がある場合、私はちょうど

let obj = {}; 
obj[attribute] = value; 

しかし、私は思ったんだけどできるように、これは、2行のは簡単です

> {"attribute": "car"} 

を取得(これは私が以前のRubyistだったので、私は物事をきれいにして正確にするのが好きです)

+0

は(また、私は、これはすでにここに答えがある質問であると感じ、私は同様の質問を見つけることができませんでしたので、私はこれが重複している場合は、事前に謝罪) –

+0

を参照してください。受け入れられた答えの一番下に重複します。 –

答えて

1

Computed property names、ES2015から始まるES6。

let a = "type", b = "car"; 
 
console.log({[a]: b});

+0

完了!私は何かがなければならないことを知っていたが、私の同僚と私は困惑していた。 –

+1

@MikeManfrinは、少なくとも今のところ、これが必ずしもどこでも動作するとは限りません。 – Pointy

+0

ありがとう、typescript - > es6を使用していますので、これがうまくいくはずです、ありがとうございます! –

関連する問題