2016-12-16 3 views
-2

У меня есть этот вид объекта:Переформулировать объект с Lodash или других альтернатив

myObj= {a:[1,2,3,4], b:[4,5,6,7]} 

, и я хочу, чтобы преобразовать его в другой, следующий за этим:

myObj= [ 
     { name: a, items: [1,2,3,4]}, 
     { name: b, items: [4,5,6,7]} 
    ]; 

Это возможно с Lodash? Я использую его в пределах TypeScript, и я буду к нему знаком, любые другие идеи с TypeScript или родным JavaScript будут приветствоваться, но я предпочитаю его в Lodash.

+1

Кстати, я не думаю, что то, что вы ожидаете получить, - это настоящая вещь в javascript. Что это должно быть? Объект, который представляет собой массив массивов с именем и свойством массива? Мое решение просто возвращает массив с преобразованными объектами внутри. Надеюсь, это то, что вы ищете. – toskv

ответ

1

Нет необходимости использовать lodash. У вас может быть чистое решение с помощью Typcript.

let modifiedObj = Object.keys(myObj).map(key => ({ name: key, items: myObj[key] })); 

Вы можете найти рабочий пример here.

+0

Почему вы называете это «TypeScript»? –

+0

из-за функции стрелки. Хотя я признаю, что это тоже можно сделать в ES6. – toskv

+0

Функция стрелки не является TypeScript. Это ** - ** ES6. –

Смежные вопросы