数组Array.sort()排序的方法

数组Array.sort()排序的方法:
如果调用方法sort()时没有使用参数,将按字母顺序(更精确地说,是按照字符编码的顺序)对数组中的元素进行排序。如果想按照别的顺序进行排序,就必须提供比较函数,该函数要比较两个值,a-b>0则升序,反之降序。

1、升序

arr=[10,1,100]

arr.sort(function(a,b){return a-b})
输出 [1, 10, 100]

2、降序

arr.sort(function(a,b){return b-a})
输出 [100, 10, 1]

3、按字母顺序进行排序

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
console.log(arr.sort())
输出:Adrew,George,James,John,Martin,Thomas

4、对包含对象的数组排序,要求根据对象中的年龄进行由大到小的顺序排列

var arr = [{'name': '张三', age: 25},{'name': '李四', age: 11},{'name': '王五', age: 36},{'name': '赵六', age: 3}];
var objectArraySort = function (keyName) {
 return function (objectN, objectM) {
  var valueN = objectN[keyName]
  var valueM = objectM[keyName]
  if (valueN < valueM) return 1
  else if (valueN > valueM) return -1
  else return 0
 }
}
arr.sort(objectArraySort('age'))
console.log(arr) //
输出: [{'name': '王五', age: 36},{'name': '张三', age: 25},{'name': '李四', age: 11},{'name': '赵六', age: 3}]
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值