1. ホーム
  2. javascript

[解決済み] オブジェクトのキーを保持したままマップオーバーする

2022-05-13 03:13:50

質問

質問 map 関数は、javascriptオブジェクトで呼び出された場合、オブジェクトの値からマッピングされた値の配列を返します。

_.map({one: 1, two: 2, three: 3}, function(num, key){ return num * 3; });
=> [3, 6, 9]

を返す関数が欲しいのですが、キーを保持する方法はありますか?

{one: 3, two: 6, three: 9}

どのように解決するのですか?

とは アンダースコア

アンダースコアは _.mapObject という関数で、値をマッピングし、キーを保持します。

_.mapObject({ one: 1, two: 2, three: 3 }, function (v) { return v * 3; });

// => { one: 3, two: 6, three: 9 }

デモ


とは Lodash

Lodashは関数 _.mapValues を使用して、値をマッピングし、キーを保持します。

_.mapValues({ one: 1, two: 2, three: 3 }, function (v) { return v * 3; });

// => { one: 3, two: 6, three: 9 }

デモ