如何从JSON的media数组中移除空对象?含重复问题修正
移除JSON中media数组内的空对象字段问题
原始需求
源JSON:
{ "id": 3, "status": "active", "media": [ { "content": { "logo": { "id": 24808 } }, "web": { "primary": { "id": 909 } }, "description": {}, "status": "blocked" } ] }
字段description可能是空对象{},也可能非空。需要实现:仅当description为空对象时将其移除;web字段同理也可能为空,核心需求是移除media数组中的空对象字段。
预期输出:
{ "id": 3, "status": "active", "media": [ { "content": { "logo": { "id": 24808 } }, "web": { "primary": { "id": 909 } }, "status": "blocked" } ] }
更新问题
今日发现新问题:当content、web或description包含多个子对象时(如下例),脚本会产生重复项,寻求解决该问题的方案。
示例JSON:
{ "id":3, "status":"active", "media":[ { "content":{ "logo":{ "id":24808 }, "main_theme":{ "id":91390 }, "preview_pic":{ "id":11 } }, "web":{ "primary":{ "id":909 }, "outer_link":{ "id":501 } }, "description":{ }, "status":"blocked" } ] }
内容的提问来源于stack exchange,提问作者fujidaon
相关产品推荐
相关产品推荐

