需求場(chǎng)景:接收到格式如下數(shù)據(jù)
{
"data":{
"items": [
{ "beRecommendName":"John2" , "beRecommendCityName":"北京" ,"recommendTimeString":"2017.08.22 15:00","rewardPrice":"100","recStatus":"1","id":"2"},
{ "beRecommendName":"John3" , "beRecommendCityName":"上海" ,"recommendTimeString":"2017.08.22 15:00","rewardPrice":"200","recStatus":"2"},
{ "beRecommendName":"John4" , "beRecommendCityName":"廣州" ,"recommendTimeString":"2017.08.22 15:00","rewardPrice":"100","recStatus":"3"},
{ "beRecommendName":"John5" , "beRecommendCityName":"上海" ,"recommendTimeString":"2017.08.22 15:00","rewardPrice":"300","recStatus":"4"}
]
}
}
其中recStatus是用來(lái)判斷用戶(hù)的狀態(tài)是等待申請(qǐng),已經(jīng)領(lǐng)取,正在審批,審批失敗這四種狀態(tài),要求在用戶(hù)執(zhí)行操作后在狀態(tài)變更后不同狀態(tài)的顯示值按照等待申請(qǐng),已經(jīng)領(lǐng)取,正在審批,審批失敗的排序排列
<script>
var items = [
{
"beRecommendName": "John1",
"beRecommendCityName": "上海",
"recommendTimeString": "2017.08.22 15:00",
"rewardPrice": "100",
"recStatus": "1",
"id": "1"
},
{
"beRecommendName": "John2",
"beRecommendCityName": "北京",
"recommendTimeString": "2017.08.22 15:00",
"rewardPrice": "100",
"recStatus": "1",
"id": "2"
},
{
"beRecommendName": "John3",
"beRecommendCityName": "上海",
"recommendTimeString": "2017.08.22 15:00",
"rewardPrice": "200",
"recStatus": "2"
},
{
"beRecommendName": "John4",
"beRecommendCityName": "廣州",
"recommendTimeString": "2017.08.22 15:00",
"rewardPrice": "100",
"recStatus": "3"
},
{
"beRecommendName": "John5",
"beRecommendCityName": "上海",
"recommendTimeString": "2017.08.22 15:00",
"rewardPrice": "300",
"recStatus": "4"
}
]
var info = items.sort(function (recStatus) {
return function (a, b) {
var a = a[recStatus],
b = b[recStatus];
return a - b;
}
})
console.log(info);
</script>
這里注意一點(diǎn),最好的對(duì)數(shù)據(jù)進(jìn)行排序的方式是由后臺(tái)進(jìn)行排序,前端只負(fù)責(zé)展示,因?yàn)榍岸伺判蛳啾扔诤蠖伺判蚋雍馁M(fèi)性能