Underscore.js :создать карту из списка объектов, используя ключ, найденный в объекте

Я использую превосходную библиотеку Underscore.js . У меня есть конкретная задача, которую я могу выполнить с помощью JavaScript или jQuery, но мне было интересно, есть ли в Underscore какая-то абстракция, которую я упустил.

По сути, у меня есть такой объект-

var some_object_array = [{id: "a", val: 55}, {id: "b", val: 1}, {id: "c", val: 45}];

Я хочу преобразовать его в-

var some_map = {"a": {id: "a", val: 55}, "b": {id: "b", val: 1}, "c": {id: "c", val: 45}};

Я знаю, что могу использовать _.groupBy(some_object_array, "id"). Но это возвращает такую ​​карту-

var some_grouped_map = {"a": [{id: "a", val: 55}], "b": [{id: "b", val: 1}], "c": [{id: "c", val: 45}]};

Обратите внимание, что это делает то, для чего рекламируется. Но я надеялся получить some_map, не перебирая объекты самостоятельно.

Любая помощь приветствуется.

59
задан user3335966 1 September 2015 в 13:11
поделиться