JS对多维数组排序
2017-12-05 22:46
190 查看
现有data数组如下:
对data数组按照数组第三维数值进行排序
其实是数组依次将数组元素复制给x,y,比如首先将data[0]赋给x,data[1]赋给y,然后用x[0] – y[0],根据返回的值,
如果返回的是大于0的数,那么就把数组中x放到y的后面,
如果返回的是0则不变,
如果小于0则将x放到y的前面,
然后第一个排序好之后在进行下面两个的排序,直到整个数组排序完成。
这是默认升序的比较函数,如果要降序排列则只需修改比较方式,改为 return y[0] – x[0] 即可,
这里我们x[0]表示是按第一列进行排序,我们这里也可以按其他列进行排序。这里的排序默认就会修改arr的数组结构,所以排序完arr就是按第一列升序的数组了。
var data = [[1,2,2],[3,3,1],[2,1,3]];
对data数组按照数组第三维数值进行排序
data.sort(function(x,y){ return x[2] - y[2]; });
其实是数组依次将数组元素复制给x,y,比如首先将data[0]赋给x,data[1]赋给y,然后用x[0] – y[0],根据返回的值,
如果返回的是大于0的数,那么就把数组中x放到y的后面,
如果返回的是0则不变,
如果小于0则将x放到y的前面,
然后第一个排序好之后在进行下面两个的排序,直到整个数组排序完成。
这是默认升序的比较函数,如果要降序排列则只需修改比较方式,改为 return y[0] – x[0] 即可,
这里我们x[0]表示是按第一列进行排序,我们这里也可以按其他列进行排序。这里的排序默认就会修改arr的数组结构,所以排序完arr就是按第一列升序的数组了。
相关文章推荐
- PHP多维数组排序
- PHP array_multisort()函数多维数组排序
- js实现数组排序
- 对JSON数组对象排序-有键相同的元素,分组数量不一致,可采用如下的JS进行循环表格输出
- JS练习题②:数组的全排序
- array_multisort — 对多个数组或多维数组进行排序
- js中数组(Array)重排序方法深析
- js之数组排序
- js多个(N)个数组的的元素组合排序算法,多维数组的排列组合或多个数组之间的排列组合
- js一维数组、多维数组和对象的混合使用方法
- php 多维数组按数组的某一字段排序 数组排序
- 【js实现】在排序数组中,找出给定数字的出现次数,比如 [1, 2, 2, 2, 3] 中2的出现次数是3次
- 使用 array_multisort 对多维数组排序
- js 数组对象根据某一属性排序
- js数组的sort排序详解
- 多维数组时间排序
- js 数组的sort排序
- Js数组排序函数sort()介绍
- array_multisort实现PHP多维数组排序示例讲解
- js如何对数组进行排序