我有一个如下所示的 JSON
{
"status": {
"On Hold": true,
"Completed": true,
"Work In Progress": false,
"Closed": false,
"Initiation": false
},
"application": {
"Athena":false,
"EWindow":false,
"EWS":true,
"FACT":false,
"FTP":false,
"Hardware":false,
"Harmony":true,
"Hermes":false
}
}
我想过滤这个 json 以包含其值为 true 的项目,如下所示
{"status":"On Hold,Completed","application":"EWS,Harmony"}
非常感谢任何帮助
最佳答案
var data = {"status":{"On Hold":true,"Completed":true,"Work In Progress":false,"Closed":false,"Initiation":false},"application":{"Athena":false,"EWindow":false,"EWS":true,"FACT":false,"FTP":false,"Hardware":false,"Harmony":true,"Hermes":false}}
var newData = {};
for(var prop in data){
var subData = data[prop];
var xs = [];
for(var subProp in subData){
if(subData[subProp] === true)
xs.push(subProp);
}
newData[prop] = xs.join(',');
}
关于javascript - 过滤 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15222312/