Javascript 从包含子对象的对象列表中检索外部键
我正在使用fetch检索json文件。json文件返回一个对象列表。每个对象也有一个对象。我正在尝试控制台记录外部对象。以下是该文件的内容。从下面的数据中,我试图记录这个列表['CNDNET','Acropolis','Other']。如果我使用Object.keys(数据),我会得到一个整数列表[0,1,2]。多谢各位Javascript 从包含子对象的对象列表中检索外部键,javascript,json,Javascript,Json,我正在使用fetch检索json文件。json文件返回一个对象列表。每个对象也有一个对象。我正在尝试控制台记录外部对象。以下是该文件的内容。从下面的数据中,我试图记录这个列表['CNDNET','Acropolis','Other']。如果我使用Object.keys(数据),我会得到一个整数列表[0,1,2]。多谢各位 [ { "CNDNET":{ "application":[ {
[
{
"CNDNET":{
"application":[
{
"Elastic":[
"Missing Data",
"No Data/Data Feed Down",
"Content/Feature Request",
"Access Issue"
]
},
{
"Kibana":[
"Website Access Issue",
"Access Issue",
"Site Down"
]
},
{
"Logstash":[
"Missing Data",
"No Data/Data Feed Down",
"Content/Feature Request",
"Access Issue"
]
},
{
"Kafka":[
"Missing Data",
"No Data/Data Feed Down",
"Content/Feature Request",
"Access Issue"
]
},
{
"Phoenix":[
"Missing Data",
"No Data/Data Feed Down",
"Content/Feature Request",
"Access Issue"
]
},
{
"Outlook":[
"Access Issue"
]
},
{
"Domain Account":[
"Access Issue"
]
},
{
"Token":[
"Access Issue"
]
},
{
"Software":[
"Authenticate",
"Firefox",
"Swift"
]
},
{
"Hardware":[
"Monitor",
"Printer"
]
}
]
}
},
{
"Acropolis":{
"application":[
{
"ACT":[
"Missing Data",
"No Data/Data Feed Down",
"Content/Feature Request",
"Access Issue"
]
},
{
"ARTEMIS":[
"Missing Data",
"No Data/Data Feed Down",
"Content/Feature Request",
"Access Issue"
]
}
]
}
},
{
"Other":{
"application":[
{
"CMIS":[
"Website Access Issue",
"Other",
"Access Issue"
]
},
{
"SharePoint":[
"Access Issue",
"Other"
]
},
{
"GTMS":[
"Access Issue",
"Other"
]
},
{
"Other":[
"Other"
]
}
]
}
}
]
顶级
数据数组中实际上包含三个对象。您可以使用来遍历这些对象,并为每个对象返回Object.keys()
const data=[{“CNDNET”:{“application”:[{“Elastic”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]},{“Kibana”:[“网站访问问题”,“访问问题”,“网站关闭”]},{“Logstash”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]},{“Kafka”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]},{“凤凰”:[“缺少数据”,“无数据/数据反馈”,“内容/功能请求”]},{“Outlook”:[“访问问题”]},{“域帐户”:[“访问问题”]},{“令牌”:[“访问问题”]},{“软件”:[“身份验证”,“Firefox”,“Swift”]},{“硬件”:[“监视器”、“打印机”]}}}}},{“卫城”:{“应用程序”[{“法案”:[“缺失数据”、“无数据/数据反馈”、“内容/功能请求”、“访问问题”]},{“ARTEMIS”:[“缺失数据”、“无数据/数据反馈”、“内容/功能请求”、“访问问题”]}},{“其他”:{“应用程序”[{“CMIS”:[“网站访问问题”、“其他”,”访问问题“]},{“SharePoint”:[“访问问题”,“其他”]},{“GTMS”:[“访问问题”,“其他”]},{“其他”:[“其他”]}]}]
constdatakeys=data.flatMap(o=>Object.keys(o));
console.log(dataKeys);
顶级数据数组中实际上包含三个对象。您可以使用来迭代这些对象,为每个对象返回对象.keys()
const data=[{“CNDNET”:{“application”:[{“Elastic”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]},{“Kibana”:[“网站访问问题”,“访问问题”,“网站关闭”]},{“Logstash”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]},{“Kafka”:[“缺失数据”“,”无数据/数据反馈“,”内容/功能请求“,”访问问题“]},“{”凤凰城“:[”缺失数据“,”无数据/数据反馈“,”内容/功能请求“,”访问问题“]},{”Outlook“:[”访问问题“]},{”域帐户“:[”访问问题“]},{”令牌“:[”访问问题“]},{”软件“:[”身份验证“,”火狐“,”Swift”},{”硬件“:”[“监视器”,“打印机”]}}}},{“卫城”:{“应用程序”[{“法案”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]},{“ARTEMIS”:[“缺失数据”,“无数据/数据反馈”,“内容/功能请求”,“访问问题”]}},{“其他”:{“应用程序”[{“CMIS”:[“网站访问问题”,“其他”,“访问问题”]},{“SharePoint”:[“访问问题”,“其他”]},{“GTMS”:[“访问问题”,“其他”]},{“其他”:[“其他”]}]
constdatakeys=data.flatMap(o=>Object.keys(o));
console.log(dataKeys);
您可以遍历数组并返回键并将其存储在变量中。稍后,可以使用concat()
或flat()
方法将2D数组转换为1D数组,如下例所示
let result = arr.map((item) => {
return Object.keys(item)
})
console.log(result.flat())
console.log([].concat(...result))
您可以迭代数组并返回键并将其存储在变量中。稍后,可以使用concat()
或flat()
方法将2D数组转换为1D数组,如下例所示
let result = arr.map((item) => {
return Object.keys(item)
})
console.log(result.flat())
console.log([].concat(...result))
您在返回外部数据数组(0,1,2)索引的数组上调用键
。您在返回外部数据数组(0,1,2)索引的数组上调用键