我有以下JSON:
{
"BTC_1CR": [],
"BTC_ABY": [],
"BTC_AC": [],
"BTC_ADN": [],
"BTC_PLX": [
{
"orderNumber": "4953620",
"type": "sell",
"rate": "0.00000597",
"amount": "653.85639346",
"total": "0.00390352",
"date": "2014-05-30 22:44:40"
}
],
"BTC_PMC": [],
"BTC_PPC": []
}
我需要摆脱空的[]元素..
答案 0 :(得分:5)
对于该数据,这应该有效:
for(var key in json){
if(json[key].length == 0) delete json[key];
}
答案 1 :(得分:1)
为了从字典中删除某些内容(我认为这是你遇到的问题),只需delete dictionary[key]
答案 2 :(得分:1)
在Javascript中,您可以尝试使用干净的代码,使用变量yourJSONData:
制作JSON//declare the new object filtered
var JSONwithoutEmptys = {};
for(var key in yourJSONData){
var item = yourJSONData[key];
if(isArray(item)){
if(item.length > 0){
JSONwithoutEmptys[key] = item;
}
} else {
JSONwithoutEmptys[key] = item;
}
}
function isArray(element){
var result = false;
if(Object.prototype.toString.call( element) === "[object Array]"){
result = true;
}
return result;
}
//then you can use JSONwithoutEmptys so clear :D