сохранить объект с дополнительными атрибутами в новом вложенном объекте javascript - PullRequest
0 голосов
/ 20 марта 2020

У меня есть Объект с массивами в нем, например:

entries = 
0: (2) ["manufacturer", "intel"]
1: (2) ["quantity", "20"]
2: (2) ["foo", "bar"]

(я знаю, не очень кратко)

Теперь мне нужно преобразовать его в следующий формат, чтобы иметь возможность передать его и не вызывать сумасшедшего смешения типов.

itemName:
0: {name: "manufacturer", value: "intel"}
1: {name: "quantity", value: "20"}
2: {name: "foo", value: "bar"}

Сейчас я делаю следующее:

for (var [key, value] of entries) {
     // here i need to open up a new row in my object
     Object.assign(itemName, {name: key}, {value: value});
}

Это возвращает следующее:

{name: "foo", value: "bar"}

Таким образом, он, вероятно, перезаписывает первые записи, поскольку все они имеют имя, значение. Также я не создаю новую строку для каждого имени, значения. Какой код я могу добавить в эту строку. Надеюсь, это не слишком смущает

1 Ответ

2 голосов
/ 20 марта 2020

Вы можете просто использовать карту

const data = [
  ["manufacturer", "intel"],
  ["quantity", "20"],
  ["foo", "bar"]
]

const final = data.map(([key, value]) => ({
  key,
  value
}))

console.log(final)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...