Мой объект выглядит так:
Я хочу добавить значение ключа, которое содержит массивы, в качестве значения в объекте, чтобы добиться чего-то вроде этого:
{avg: 16, day: "2020-12-11", max: 25, min: 8,value:"o3"}
{avg: 18, day: "2020-12-12", max: 21, min: 15,value:"o3"}
{avg: 10, day: "2020-12-13", max: 16, min: 6,value:"o3"}
{avg: 16, day: "2020-12-11", max: 19, min: 12, value: "pm10"}
{avg: 11, day: "2020-12-12", max: 17, min: 6, value: "pm10"}
{avg: 20, day: "2020-12-13", max: 26, min: 10, poluant: "pm10"}
Я пытался перебрать каждый объект и добавить значение в конце, как это, и работает, но мне интересно, смогу ли я сделать это без перебора каждого объекта (в конце концов, у меня есть пять циклов for):
for (let item of this.o3) {
item.value = 'o3';
}
for (let item of this.pm10) {
item.value = 'pm10';
}
У объектов нет «порядка», поэтому нет ни начала, ни конца.
я знаю, что это не json, json содержит больше данных, и я просто разместил строки, которые хочу изменить
Если вы знаете, что это не JSON, то почему вы называете это JSON? (Я удалил ссылки на этот термин).
Я думаю, что было бы полезно, чтобы мы могли лучше всего помочь вам устранить неполадки, это предоставляет точный пример ввода и вывода.
Без показа жизнеспособного кода нет надлежащего способа оказать помощь.
я редактирую свой пост.
Джоу может сделать это, используя цикл внутри цикла
var daily = {
o3 : [{avg: 16, day: "2020-12-11", max: 25, min: 8},
{avg: 18, day: "2020-12-12", max: 21, min: 15},
{avg: 10, day: "2020-12-13", max: 16, min: 6},
{avg: 16, day: "2020-12-11", max: 19, min: 12},
{avg: 11, day: "2020-12-12", max: 17, min: 6},
{avg: 20, day: "2020-12-13", max: 26, min: 10}
],
pm10 : [{avg: 16, day: "2020-12-11", max: 25, min: 8},
{avg: 18, day: "2020-12-12", max: 21, min: 15},
{avg: 10, day: "2020-12-13", max: 16, min: 6},
{avg: 16, day: "2020-12-11", max: 19, min: 12},
{avg: 11, day: "2020-12-12", max: 17, min: 6},
{avg: 20, day: "2020-12-13", max: 26, min: 10 }
]} ;
for(item in daily){
if (item == "o3"){
daily[item] = daily[item].map(x=> x = { ...x, value:"o3"} )
}else if ("pm10"){
daily[item] = daily[item].map(x=> x = { ...x, value:"pm10"} )
}
}
console.info(daily)
Изображение не JSON. Пожалуйста, прочитайте описание использования тега
json
, особенно часть «не использовать».