发表于: 2016-09-17 23:05:18

6 1876


今天完成的事情接着昨天自己找的任务,一个二维函数的排序。
   
var Data =[['小红',89],['小白',70],['小丽',95],['小明',65]]
var ranking =   ['','','',''];
Data.sort (function(a,b){
    var   x = a[1],
        y = b[1];
    if   ( x > y){
        return -1;
    }
    else   if ( x < y){
        return 1;
    }
    else   {
        return 0;
    }
});
for (var i = 0; i < Data.length; i++){
    document.write('<li>'+ranking[i]+':'+Data[i]+"</li>");
}


明天计划的事情继续一些简单的任务训练。


遇到的问题1、使用sort排序的时候,单数组会排序,
myarr.sort(sortNum);
到了二维数组就不会了,翻阅了一些资料才知道。使用
myarr.sort(function(a,b){});
引用:
(1)若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。
(2)若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。
(3)若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。
不是很理解,尤其是(2),-1<返回值<1,则AB相同排序?怎么查看返回值?
2、<li>小明的成绩是:65</li>只取“小明”和“65”不会写,我上面直接手写的数组。当时看基础知识这一章节看的一脸懵。


收获对于js使用sort排序即二维数组排序有了了解。



返回列表 返回列表
评论

    分享到