编码
var arr = [43, 54, 4, -4, 84, 100, 58, 27, 140];
将上面数组分别按从大到小以及从小到大进行排序后在 console 中输出
var arr = ['apple', 'dog', 'cat', 'car', 'zoo', 'orange', 'airplane'];
将上面数组分别按字母顺序 a-z 及 z-a 进行排序, 在 console 中输出
var arr = [[10, 14], [16, 60], [7, 44], [26, 35], [22, 63]];
将上面的二维数组, 按照每个元素中第二个数从大到小的顺序进行排序输出, 输出结果应该为:
- [[22, 63], [16, 60], [7, 44], [26, 35], [10, 14]]
- var arr = [
- {
- id: 1,
- name: 'candy',
- value: 40
- }, {
- id: 2,
- name: 'Simon',
- value: 50
- }, {
- id: 3,
- name: 'Tony',
- value: 45
- }, {
- id: 4,
- name: 'Annie',
- value: 60
- }
- ];
将上面数组分别按元素对象的 value 值从小到大进行排序后输出
- <!DOCTYPE html>
- <HTML>
- <head>
- <meta charset="utf-8" />
- <title>
- JS 里的居民们 8 - 排序
- </title>
- </head>
- <body>
- <script>
- function compareNumbers(a, b) {
- return a - b;
- }
- var arr1 = [43, 54, 4, -4, 84, 100, 58, 27, 140];
- // 将上面数组分别按从大到小以及从小到大进行排序后在 console 中输出
- console.log("arr1 从小到大排序:" + arr1.sort((a, b) = >a - b));
- console.log("arr1 从小到大排序:" + arr1.sort(function(a, b) {
- return a - b;
- })) console.log("arr1 从大到小排序:" + arr1.sort((a, b) = >a - b).reverse());
- console.log("arr1 从大到小排序:" + arr1.sort((a, b) = >b - a));
- var arr2 = ['apple', 'dog', 'cat', 'car', 'Zoo', 'orange', 'airplane'];
- // 将上面数组分别按字母顺序 a-z 及 z-a 进行排序, 在 console 中输出
- console.log("arr2 从 a-z 排序:" + arr2.sort()); // 与字符串相加, 成为字符串打印出来
- console.log("arr2 从 z-a 排序:"); // 大小写有差别!! 注意
- console.log(arr2.sort().reverse()); // 仍为数组对象打印出来
- var arr3 = [[10, 14], [16, 60], [7, 44], [26, 35], [22, 63]];
- // 将上面的二维数组, 按照每个元素中第二个数从大到小的顺序进行排序输出, 输出结果应该为:
- console.log("arr3 按第二个数从大到小排序:");
- console.log(arr3.sort((a, b) = >b[1] - a[1]));
- console.log("arr3 按第一个数从大到小排序:");
- console.log(arr3.sort((a, b) = >b[0] - a[0]));
- //[[22, 63], [16, 60], [7, 44], [26, 35], [10, 14]]
- var arr4 = [{
- id: 1,
- name: 'candy',
- value: 40
- },
- {
- id: 2,
- name: 'Simon',
- value: 50
- },
- {
- id: 3,
- name: 'Tony',
- value: 45
- },
- {
- id: 4,
- name: 'Annie',
- value: 60
- }];
- // 将上面数组分别按元素对象的 value 值从小到大进行排序后输出
- arr4.sort(function(a, b) {
- var valueA = a.value;
- var valueB = b.value;
- if (valueA < valueB) {
- return - 1;
- }
- if (valueA > valueB) {
- return 1;
- }
- return 0;
- }) console.log("按元素对象的 value 值从小到大进行排序:") console.log(arr4);
- arr4.sort(function(a, b) {
- var valueA = a.value;
- var valueB = b.value;
- if (valueA < valueB) {
- return 1;
- }
- if (valueA > valueB) {
- return - 1;
- }
- return 0;
- }) console.log("按元素对象的 value 值从大到小进行排序:") console.log(arr4);
- arr4.sort(function(a, b) {
- var nameA = a.name.toUpperCase(); // 忽略大小写进行排序, 按字母来
- var nameB = b.name.toUpperCase();
- if (nameA < nameB) {
- return - 1;
- }
- if (nameA > nameB) {
- return 1;
- }
- return 0;
- }) console.log("按元素对象的 name 值从 a-z 进行排序:") console.log(arr4);
- </script>
- </body>
- </HTML>
来源: http://www.bubuko.com/infodetail-2875239.html