Как разбить объект на части?

249
05 февраля 2018, 06:55

Есть объект типа - const lol = { z: 3, a: 4, b: 1, c: 6}

Как из него получить массив объектов типа - qwe = [{z: 3},{a: 4},{b: 1},{c: 6}]

Заранее спасибо

Answer 1

Функциональное решение, используются:

  • Object.entries
  • метод .map для массивов
  • Вычисление имён свойств в записи объекта
  • Синтаксис () => ({ключ: значение}) для возврата объекта из лямбды

const object = { z: 3, a: 4, b: 1, c: 6}; 
const result = Object 
  .entries(object) 
  .map(entry => ({[entry[0]]: entry[1]})); 
console.log(result);

Answer 2

const lol = { z: 3, a: 4, b: 1, c: 6}; 
 
function toArr(obj) 
{ 
  const res = []; 
  for (let key in obj) 
  { 
    let buf = {}; 
    buf[key] = obj[key]; 
    res.push(buf); 
  } 
  return res; 
} 
 
console.log(toArr(lol));

Answer 3

const lol = { 
  z: 3, 
  a: 4, 
  b: 1, 
  c: 6 
}; 
const a = []; 
for (i in lol) { 
  var o = new Object(); 
  o[i] = lol[i]; 
  a.push(o) 
} 
 
console.log(a)

READ ALSO
регулярные выражения для знака “-”

регулярные выражения для знака “-”

Пытаюсь сделать регулярку, чтобы определить, начинается ли строка со знака -

241
В момент загрузки картинки видим лоадер, затем сразу саму картинку - как сделать на React?

В момент загрузки картинки видим лоадер, затем сразу саму картинку - как сделать на React?

После нажатия на кнопку "сгенерировать новую картинку" я рандомно выбираю ее id и получаюurl картинки вида `images/static/${id}" , где id - id выбранной...

260
Правильно я решил задачу в условиях JS?

Правильно я решил задачу в условиях JS?

Дано целое число, большее 999Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую...

212
пробелы вместо табов eslint

пробелы вместо табов eslint

Поставил проверку кода в редакторе WebStorm, eslintВот конфиг:

201