【JavaScript 学习--02】--排序问题

来源:互联网 发布:淘宝账号名称怎么改 编辑:程序博客网 时间:2024/06/13 22:39

在JS里常常用到排序,特记录下

原始数据为:

var test_order = [{order:5, name:"tl1"},{name:"tl2"},{order:4, name:"tl3"},{order:1, name:"tl4"}]

利用sort()进行排序

test_order.sort(function (a,b) {    console.log("a=" + a.name+";b="+ b.name);    return (a.order||0) - (b.order||0);});

执行结果是:

[{name: "tl2"},{order: 1, name: "tl4"},{order: 4, name: "tl3"},{order: 5, name: "tl1"}]

==============
实际执行过程是如下这样:

a=tl1;b=tl2a=tl1;b=tl3a=tl2;b=tl3a=tl1;b=tl4a=tl3;b=tl4a=tl2;b=tl4

—————————–深入理解sort
关于sort()的详细内容可以参考:http://www.w3schools.com/jsref/jsref_sort.asp
这里写图片描述

Example

Sort numbers in an array in ascending(up) order:

var points = [40, 100, 1, 5, 25, 10];points.sort(function(a, b){return a-b});

The result of points will be:

1,5,10,25,40,100

Sort numbers in an array in descending(down) order:

var points = [40, 100, 1, 5, 25, 10];points.sort(function(a, b){return b-a});

The result of points will be:

100,40,25,10,5,1
0 0
原创粉丝点击