AWS

【JavaScript】String配列の要素をキーとするオブジェクトを作成する方法

AWS
この記事は約1分で読めます。

はじめに

ループしながら、配列内の要素をキーとするオブジェクトを作成する方法を紹介します。

方法

const array = ['key1', 'key2', 'key3',]


const createObj = (array) => {
    const obj = new Object();
    array.forEach(item => (Object.defineProperty(obj, item, {
      enumerable: true, // ループのために必要!
      value: 'ここに値'
    })));
    return obj;
}

console.log(createObj(array));
// {key1: 'ここに値', key2: 'ここに値', key3: 'ここに値'}

オプションとして設定する、enumerable: trueが重要です。
これがないと動きません。

まとめ

配列内の要素をキーとするオブジェクトを作成することができました。