请问使用js来计算几个参数的排名

JavaScript013

请问使用js来计算几个参数的排名,第1张

var e2=1  

var e3=2

var e4=3

var e5=4

var e6=5

//需要吧以上变量转换成如下方式的数组

var arr = [

    {value:1,id:'e2'},   

    {value:3,id:'e4'},

    {value:5,id:'e6'},

    {value:2,id:'e3'},

    {value:4,id:'e5'},

]

//用js 自带的sort函数排序,也可以自己写一个冒泡排序,但是效率没有sort高

arr.sort(function(a,b){return a.value-b.value})

console.log(arr)  //最后输出的就是从小到大的排序方式了

把所有分数放入一个数组中,就可以用数组排序的方法来排序

<script type="text/javascript">

    function sortNumber(a,b){

        return a-b

    }

    var arr = new Array(3,5,8,31,66,2)

    document.write(arr.sort(sortNumber))

</script>

需要注意的是sortNumber这个方法,因为sort()是按照首字母或数字来排序的,如果没有sortNumber结果为2,3,31,5,66,8 ,这个显然不是我们所要的,如果想按照其他标准进行排序,就需要提供比较函数,如果a小于b,返回一个小于0的值,a排在b的前面,就是小的排前,大的排后,如果两者相等,就返回一个0,如果a大于b,返回一个大于0的值,b排在a的前面,根据这个,我们创建一个sortNumber的函数来判断。

这个问题,我在另一个问题里答复过,简直一模一样。。。。

https://zhidao.baidu.com/question/1694280288809319988