表格的数据类似这样的格式,因为需要的是把混乱的数据排序,ks一列相同的在一起,child_ks和xz字段相同的也是在一起,因为这样用于表格合并。
像这种多个字段排序到一起的如何实现呢。就是ks相同的在一起,这个前提下后面的字段也是相同的放在一起。
list: [{
ks: '外科',
child_ks: '泌尿外科',
xz: '外科一组',
doctor: '小明',
num: 18,
num2: 19,
num3: 20
},
{
ks: '中医科',
child_ks: '中医男科',
xz: '外科一组',
doctor: '小红',
num: 18,
num2: 19,
num3: 20
},
{
ks: '中医科',
child_ks: '中医男科',
xz: '外科一组',
doctor: '小张',
num: 18,
num2: 19,
num3: 20
},
{
ks: '外科',
child_ks: '泌尿外科',
xz: '外科二组',
doctor: '小李',
num: 18,
num2: 19,
num3: 20
},
{
ks: '外科',
child_ks: '泌尿外科',
xz: '外科二组',
doctor: '小明',
num: 18,
num2: 19,
num3: 20
},
{
ks: '中医科',
child_ks: '中医妇科',
xz: '外科一组',
doctor: '小明',
num: 18,
num2: 19,
num3: 20
},
{
ks: '外科',
child_ks: '泌尿外科',
xz: '外科二组',
doctor: '小明',
num: 18,
num2: 19,
num3: 20
},
{
ks: '中医科',
child_ks: '中医妇科',
xz: '外科二组',
doctor: '小明',
num: 18,
num2: 19,
num3: 20
},
]
类似这样的效果
function mysort(a,b){
if (a.ks !== b.ks) return a.ks < b.ks ? -1 : 1
else if (a.child_ks !== b.child_ks) return a.child_ks < b.child_ks ? -1 : 1
else if (a.xz !== b.xz) return a.xz < b.xz ? -1 : 1
}
function test(){
list.sort(mysort)
console.log(list)
}