Dan*_*lho 2 javascript sorting json
考虑到我有以下JSON,我怎么能生成另一个JSON,按字段排序(让我们说anoCobranca
)?
{
"extratos": [
{
"descricao": "product A",
"anoCobranca": 2012,
"mesCobranca": 01,
"nomeMesCobranca": "Janeiro",
"diaUsoInicial": 1,
"diaUsoFinal": 30,
"valor": "236.81",
"vencimento": "24/01/2012",
"formaPagamento": "Cartão",
"situacao": "ok"
},
{
"descricao": "product B",
"anoCobranca": 2012,
"mesCobranca": 2,
"nomeMesCobranca": "Fevereiro",
"diaUsoInicial": 1,
"diaUsoFinal": 29,
"valor": "249.81",
"vencimento": "24/02/2012",
"formaPagamento": "-",
"situacao": "aberto"
},
{
"descricao": "product 1",
"anoCobranca": 2012,
"mesCobranca": 3,
"nomeMesCobranca": "Março",
"diaUsoInicial": 1,
"diaUsoFinal": 31,
"valor": "339.11",
"vencimento": "24/03/2012",
"formaPagamento": "Cartão",
"situacao": "ok"
},
{
"descricao": "product D",
"anoCobranca": 2011,
"mesCobranca": 4,
"nomeMesCobranca": "Abril",
"diaUsoInicial": 1,
"diaUsoFinal": 30,
"valor": "119.18",
"vencimento": "24/04/2012",
"formaPagamento": "Cartão",
"situacao": "ok"
},
{
"descricao": "product E",
"anoCobranca": 2011,
"mesCobranca": 5,
"nomeMesCobranca": "Maio",
"diaUsoInicial": 1,
"diaUsoFinal": 30,
"valor": "81.29",
"vencimento": "24/05/2012",
"formaPagamento": "-",
"situacao": "aberto"
}
]
}
Run Code Online (Sandbox Code Playgroud)
我尝试了一些技巧,如:
function sortJSON(a,b){
return parseInt(a.json.extratos.anoCobranca - b.json.extratos.anoCobranca)
}
Run Code Online (Sandbox Code Playgroud)
还有我在这里找到的其他一些,在StackOverflow,但所有这些都失败了.
使用回调函数对数组进行排序:
obj.extratos.sort(function(a, b) {
return a.anoCobranca - b.anoCobranca;
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
84 次 |
最近记录: |