首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否向现有对象数组插入新的键值?

是否向现有对象数组插入新的键值?
EN

Stack Overflow用户
提问于 2020-12-14 03:37:57
回答 1查看 49关注 0票数 1

我的对象看起来像这样:

我想将包含数组的键值作为值添加到对象中,以实现如下所示:

代码语言:javascript
复制
{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循环):

代码语言:javascript
复制
for (let item of this.o3) {
    item.value = 'o3';
}
    
for (let item of this.pm10) {
    item.value = 'pm10';
}  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-14 04:12:08

Jou可以通过在循环中使用循环来做到这一点

代码语言:javascript
复制
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.log(daily)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65279829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档