520专题——数组sort()方法

👩‍🌾不负代码不负卿!面向对象面向君!👨‍🌾
💖明天就是5·20啦!这是一份来自小新星球的礼物!请注意查收!学完我的文章桃花爆棚的哟💖

一、sort()方法简介

JavaScript中的sort( )方法能够根据一定条件对数组元素进行排序

🚀使用sort( )方法的注意点:

1、排序操作会影响原数组

2、如果不传参数,会按照unnicode码进行比较排序(类似于字符串比较)

3、如果需要传参,需要传一个回调函数

二、使用sort()方法排序的四种情况

1、不传参数:将不会按照数值大小排序,按照字符编码的顺序排序
var arr = ['General','Aim','Tom','Bob','Jhon'];
console.log(arr.sort());

效果展示

2、传入参数,实现升序和降序
var arr = [5,4,8,2,1,6,3,7];
arr.sort(function(a,b){
	return a - b;  //从小到大排序
  });
console.log(arr);

效果展示

var arr = [5,4,8,2,1,6,3,7];
arr.sort(function(a,b){
	return b - a;  //从大到小排序
  });
console.log(arr);

效果展示

3、根据数组中的对象的莫个属性值排序
var arr = [{id:4},{id:7},{id:5},{id:9},{id:1},{id:2}];
arr.sort(function(a,b){
	return a.id - b.id;  //根据属性值从小到大排序 
  });
console.log(arr);

效果展示

var arr = [{id:4},{id:7},{id:5},{id:9},{id:1},{id:2}];
arr.sort(function(a,b){
	return b.id - a.id;   //根据属性值从大到小排序
  });
console.log(arr);

在这里插入图片描述

4、根据数组对象的多个属性值排序(多条件排序)
var arr = [{id:10,age:22},{id:4,age:12},{id:10,age:18},{id:2,age:37},{id:5,age:29}];
arr.sort(function(a,b){
	if(a.id == b.id){
		return b.age - a.age;   //如果id相等,则根据age属性值从大到小排序
		 }
		else{
		  return a.id - b.id;   //如果id不相等,则根据id属性值从小到大排序
			 }
});
console.log(arr);

在这里插入图片描述

三、总结

💪本期的博客就到这里就结束啦!
再次说明重要的一点:如果元素不是字符串,则 sort() 方法试图把数组元素都转换成字符串,以便进行比较。

小新明天就要粗去happy啦!!!骑上我心爱的小摩托🛵

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值