为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用JS排序

如何使用JS排序

繁星点点滴滴 2019-03-07 14:14:23
具体如下所示张三考试成绩为98,李四为65,王五为75如何按分数排序并显示其分数和姓名。请问用JS该如何从高到低排序呢?非常感谢。
查看完整描述

4 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

let students = [

    {

        name:"张三",

        score:98

    },

    {

        name:"李四",

        score:65

    },

    {

        name:"王五",

        score:75

    }

];

students.sort((a,b)=>{

    return b.score-a.score;

});

输出:


[

    {name: "张三", score: 98},

    {name: "王五", score: 75},

    {name: "李四", score: 65}

]

更新

//使用split("||")可以分割"||"两侧字符串,得到一个数组。数组第一项为姓名,第二项为分数

//按分数排序

score.sort((a,b)=>{

    scoreA = +a.split("||")[1];

    scoreB = +b.split("||")[1];

    return scoreB - scoreA;

});


//输出姓名和分数

for(var i = 0;i < score.length;i++){

    //姓名

    console.log(score[i].split("||")[0]);

    //分数

    console.log(score[i].split("||")[1]);

}

这个问题其实挺基础的,提问前先百度吧~


查看完整回答
反对 回复 2019-03-25
?
森栏

TA贡献1810条经验 获得超5个赞

数组 就用sort 排序,看你数据格式而确定怎么做最好


查看完整回答
反对 回复 2019-03-25
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

arr.sort((a,b)=>{

    return b-a

})

边学边看书啊


查看完整回答
反对 回复 2019-03-25
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

var testList=[......]

function sortList(a, b) {

    return b.score - a.score

}

testList.sort(sortList)


查看完整回答
反对 回复 2019-03-25
  • 4 回答
  • 0 关注
  • 588 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信