変換する最良の方法は何ですか:
['a','b','c']
に:
{
0: 'a',
1: 'b',
2: 'c'
}
ベストアンサー1
ECMAScript 6では、簡単にポリフィルできるObject.assign
:
この
Object.assign()
メソッドは、1 つ以上のソース オブジェクトからターゲット オブジェクトに、列挙可能なすべての独自プロパティの値をコピーするために使用されます。ターゲット オブジェクトを返します。
Object.assign({}, ['a','b','c']); // {0:"a", 1:"b", 2:"c"}
length
配列の独自のプロパティは列挙可能ではないためコピーされません。
また、ES8を使用することもできますスプレッド構文同じ結果を得るには、オブジェクトに対して次の操作を実行します。
{ ...['a', 'b', 'c'] }
カスタムキーの場合は、減らす:
['a', 'b', 'c'].reduce((a, v) => ({ ...a, [v]: v}), {})
// { a: "a", b: "b", c: "c" }