Javascript 迭代对象键并获取内部对象';将密钥合并到一个数组中
我正在尝试将Javascript 迭代对象键并获取内部对象';将密钥合并到一个数组中,javascript,arrays,json,multidimensional-array,Javascript,Arrays,Json,Multidimensional Array,我正在尝试将对象的键。键全部放在一个数组中,但遇到了一些困难 目前我正在尝试这一点,但我得到了每个对象键的数组 Object.keys(myObject.map)(x=>Object.keys(myObject[x])) 对象: { "a1G0R000002Sv15UAC":{ "a1K0R000000ytEsUAI":{ <--- "test2_2":"test2" } }, "a1G0R000002SvdYUAS":{
对象的键。键
全部放在一个数组中,但遇到了一些困难
目前我正在尝试这一点,但我得到了每个对象键的数组
Object.keys(myObject.map)(x=>Object.keys(myObject[x]))
对象:
{
"a1G0R000002Sv15UAC":{
"a1K0R000000ytEsUAI":{ <---
"test2_2":"test2"
}
},
"a1G0R000002SvdYUAS":{
"a1K0R000000yu8EUAQ":{ <---
"test2_2":"test2"
},
"a1K0R000000ytEsUAI":{ <---
"string_1":"test"
}
},
"a1G0R000002T4NIUA0":{
"a1K0R000000ytEsUAI":{ <---
"string_1":"test"
}
}
}
{
“a1G0R000002Sv15UAC”:{
“a1K0R000000ytEsUAI”:{您必须在
循环中使用2for..in。简单地说,for..in
循环迭代对象的键。有关更多信息,您可以查看
const originalObject={
“a1G0R000002Sv15UAC”:{
“a1K0R000000ytEsUAI”:{
“test2_2”:“test2”
}
},
“a1G0R000002SvdYUAS”:{
“a1K0R000000yu8EUAQ”:{
“test2_2”:“test2”
},
“a1K0R000000ytEsUAI”:{
“字符串_1”:“测试”
}
},
“a1G0R000002T4NIUA0”:{
“a1K0R000000ytEsUAI”:{
“字符串_1”:“测试”
}
}
}
const desiredArray=[]
for(让我输入原始对象){
for(让j进入原始对象[i]){
理想阵列推力(j)
}
}
console.log(desiredArray)
使用map
Object.entries(myObject).map(x => Object.keys(x[1])).flat()
您可以使用将结果转换为单个数组“
const myObject={
“a1G0R000002Sv15UAC”:{
“a1K0R000000ytEsUAI”:{
“test2_2”:“test2”
}
},
“a1G0R000002SvdYUAS”:{
“a1K0R000000yu8EUAQ”:{
“test2_2”:“test2”
},
“a1K0R000000ytEsUAI”:{
“字符串_1”:“测试”
}
},
“a1G0R000002T4NIUA0”:{
“a1K0R000000ytEsUAI”:{
“字符串_1”:“测试”
}
}
}
const keys=Object.keys(myObject).map(key=>Object.keys(myObject[key])).flat();
console.log(键)
谢谢!我有一个类似的解决方案,但我正在尝试用.map
或其他东西而不是2个loopsCool来实现这一点。然后你应该选择答案by@Addis和@ferhen。但我想,如果您试图使用Object.keys和map来获得更好的时间复杂度,我认为这两种方法将具有相同的时间复杂度复杂性。