美文网首页
js排序sort()

js排序sort()

作者: acsamson | 来源:发表于2019-04-04 21:17 被阅读0次

数组排序

先看代码数组从排序:

var line = "252 2784 2160 181 6644 2870";
var arr = line.split(' ');
var arrInt = arr.map(function (data) {
    return +data;
});
arrInt = arrInt.sort(function (a, b) {
    return b - a; // 后面比前面大的时候就要交换, 也就是从 大  ==> 小
})

解析我们在拿到一串数组的时候很经常要进行拆分, 比如:

var line = "252 2784 2160 181 6644 2870";

先用arr.split(' ')来拆分成字符串数组

var arr = ["252", "2784", "2160", "181", "6644","2870"];

然后再转为number类型

// 方式一 forEach没有返回值
arr.forEach(function (data, index, arr) {
    arrInt.push(+data);
});

// 方式二
var arrInt = arr.map(function (data) {
    return +data;
});

一定要定义一个新的变量不可以arr = arr.sot(...)这样

转为number类型后就可以排序

如果使用默认sort()排序的话它只会比较第一位数字, 例如1820大, 所以要写一个函数进行判断才可以

arrInt = arrInt.sort(function (a, b) {
    return b - a; // 后面比前面大的时候就要交换, 也就是从 大  ==> 小
})

字符排序

可以用A.localeCompare(B) 若A大于B则返回大于0的数字, 相等返回0

var arr = [['A','你'], ['好','我'], ['佩','齐']];
arr.sort(function(x, y){
    return x[0].localeCompare(y[0]);
});

相关文章

  • Javascript常见问题(三)

    一. sort是如何排序的,如何解决sort排序的问题? arr2使用sort排序结果错误了,什么原因?js在计...

  • 排序问题

    一.js中sort()数字排序问题 语法:arrayObject.sort(sortMethod);参数sortM...

  • 数组排序及去重方法总结

    一、 数组排序 Array.sort原理:首先,js中的sort会将排序的元素类型转化成字符串进行排序。不过它是一...

  • JavaScript学习--数组排序以及最大值、最小值问题

    1.数字排序在js中默认是使用 sort() 函数按照字符串顺序对值进行排序。但是,sort() 方法在对数值排序...

  • js手写数组排序

    一. js的sort()方法 sort() 方法用于对数组的元素进行排序,同时需要一个额外的排序函数sortNum...

  • js排序sort()

    数组排序 先看代码数组从大到小排序: 解析我们在拿到一串数组的时候很经常要进行拆分, 比如: 先用arr.spli...

  • js中的数组对象排序

    一、普通数组排序 js中用方法sort()为数组排序。sort()方法有一个可选参数,是用来确定元素顺序的函...

  • js中的数组对象排序(存稿)

    一、普通数组排序 js中用方法sort()为数组排序。sort()方法有一个可选参数,是用来确定元素顺序的函...

  • vue排序问题

    接在排序表头中留下的坑使用js对list进行排序 this.showDataList.sort((a, b) =>...

  • 算法

    算法和数据结构 十大排序实现原理?使用场景js中sort使用的是哪种排序?sort使用的是插入排序和快速排序结合的...

网友评论

      本文标题:js排序sort()

      本文链接:https://www.haomeiwen.com/subject/mqqciqtx.html