js对接口返回的数据排序(对JOSN 数据指定属性排序,对二维数组元素指定字段排序)
程序员文章站
2022-07-02 22:07:47
...
排序前数据展示是这样的:
甲方的需求是想要以“单位名称”指定的顺序进行展示:
.想要通过这种没有规律的字段(单位名称)进行展示是不可能的,那就转换一下:
datas 参数是通过ajax获取的结果,通过这种方式对想要排序的规则添加一个键值对 ,然后对以sot 进行排序就好了:
代码:
addSort : function(datas){
for (var i = 0; i <datas.length; i++) {
switch (datas[i]['单位名称']) {
case '':
datas[i]['sot']=0;
break;
case '':
datas[i]['sot']=1;
break;
case '':
datas[i]['sot']=2;
break;
case '':
datas[i]['sot']=3;
break;
case '':
datas[i]['sot']=4;
break;
}
}
return datas;
},
- 通过步骤① 返回的是一个对象类型的数组:
- 接着就是对数组进行一下排序就可以了:注意 内层 for 循环 的取值范围
代码:
sortDatas : function(lists){
for(var j = 0 ; j < lists.length; j++){
for(var k = 0 ; k < lists.length-1-j ; k++){
if (lists[k].sot > lists[k+1].sot){
var temp =lists[k];
lists[k] = lists[k + 1];
lists[k + 1] = temp;
}
}
}
return lists;
}
然后进行调用:
结果:
上一篇: useModal(简单)