vue对表格进行排名排序
需求:1.排序由小到大;2.没有排序或者为0的默认到最后面使用vue或者js都可以完成效果图:第一步:对数组进行简单的排序this.tableData.forEach(r=>{if(r.rank==null) r.rank=0})//将值为null的变为0this.tableData.sort(function(a, b){return a.rank - b.rank;});//进行排序th
·
需求:1.排序由小到大;2.没有排序或者为0的默认到最后面
使用vue或者js都可以完成
效果图:
第一步:
对数组进行简单的排序
this.tableData.forEach(r=>{
if(r.rank==null) r.rank=0
})//将值为null的变为0
this.tableData.sort(function(a, b){
return a.rank - b.rank;
});//进行排序
this.moveZero(this.tableData)
第二步:
将rank为0的放到数组最后面
moveZero(arr){
let y = 0;//定义y用于控制循环结束
for (let i = 0; y < arr.length; y++) {
if (arr[i].rank == 0) arr.push(arr.splice(i, 1)[0]);//循环到是0的位置就删除该元素0并且在arr末尾push进这个元素0,由于splice删除了该位置元素,所以i不用+1,下次循环仍然检查i位置的元素
else i++;//循环到不是0的位置就继续往后循环
}
console.log(arr);
return arr;//返回操作后的原数组
},
更多推荐
已为社区贡献6条内容
所有评论(0)