javascript - 如何从嵌套在父对象中的键值创建对象数组
问题描述
我在对象中嵌套了对象,如下所示:
var parentObj = {
key1: {
a: true,
b: 2
},
key2: {
a: false,
b: 2
},
key3: {
a: true,
b: 2
}
}
我正在寻找从键值创建对象数组,如果嵌套对象中的一个值是真的,并且这也包括键作为一[key,value]
对:
parentobj = [
{
a: true,
b: 2,
c: "key1"
},
{
a: true,
b: 2,
c: "key3"
}
]
解决方案
只需使用 for...in 循环,如下所示:
var myArray = [];
for(var key in parentObj){
var childObj = parentObj[key];
if(childObj.a) {
myArray.push({a: childObj.a, b: childObj.b, c: key });
}
}
推荐阅读
- c++ - 如何在我的 MEX 文件中使用 OpenMP 而不会导致 MATLAB 崩溃?
- c++ - 为什么我的 main 无法识别头文件和源 2 文件中的函数?
- unix - gzip 的管道输出到 csplit
- batch-file - 使用变量读取参数
- bots - (Discord 机器人)当用户加入 Discords 服务器(discord.js)时,我如何制作欢迎消息?
- spring-boot - 无法解析持久性单元根 URL:类路径资源 [] 无法解析为 URL,因为它不存在 -> [帮助 1]
- java - 我应该如何为我的数据库建模,以便我的数据库中的每个学生实体都有一个与每个课程实体相关的成绩?
- javascript - 单击父 div 时切换复选框
- typescript - 带有 Express 的 TypeScript:类型 'typeof import("express")' 没有调用签名
- node.js - 如何在shopify产品列表页面中显示评论