测试数据和代码
(a,b)=>(a.score - b.score) 是lambda表达式,等同于funtion
sort(function(a,b){return a-b;});
排序原理:是根据return值的正负数,决定a和b谁排序靠前。
<script>
var data=[
{name:'A三',url:"http://www.baidu.com",image:"imgs/user.png",score:30},
{name:'阿里',url:"http://www.baidu.com",image:"imgs/user.png",score:20},
{name:'AAA',url:"http://www.baidu.com",image:"imgs/user.png",score:10},
{name:'张三',url:"http://www.baidu.com",image:"imgs/user.png",score:90},
{name:'李四',url:"http://www.google.com",image:"imgs/user.png",score:27},
{name:'流程审批',url:"http://www.hao123.com",image:"imgs/user.png",score:20},
{name:'会议室预定',url:"http://www.hao123.com",image:"imgs/user.png",score:90},
{name:'年度测评',url:"http://www.hao123.com",image:"imgs/user.png",score:76},
{name:'在线互动',url:"http://www.hao123.com",image:"imgs/user.png",score:29},
{name:'在线查询',url:"http://www.hao123.com",image:"imgs/user.png",score:45},
{name:'研院公告',url:"http://www.hao123.com",image:"imgs/user.png",score:99},
{name:'微名片',url:"http://www.hao123.com",image:"imgs/user.png",score:23},
{name:'投票',url:"http://www.hao123.com",image:"imgs/user.png",score:34},
{name:'出差',url:"http://www.hao123.com",image:"imgs/user.png",score:56},
{name:'生日提醒',url:"http://www.hao123.com",image:"imgs/user.png",score:13},
{name:'每周日志',url:"http://www.baidu.com",image:"imgs/user.png",score:3},
{name:'职务交接',url:"http://www.baidu.com",image:"imgs/user.png",score:19},
]
var data1 =data.sort((a,b)=>(a.name.localeCompare(b.name,'zh-Hans-CN',{sensitivity: 'accent'})));
data=data.sort((a,b)=>(a.score - b.score));
console.log(data)
console.log(data1)
</script>
data 按照汉字排序
data1 按照数字排序
场景
我主要是为了控制页面的内容显示循序,在data中排好序后,直接循环输出页面就可以了。实现了控制页面内容按照某种顺序输出的效果。