Js数组排序方法(sort)失效解决方法

本文探讨了JavaScript中数组排序方法sort()的一个常见问题,即当不传参数时,sort()会按照字符串Unicode值进行排序。通过示例展示了未正确排序的情况,并提供了修复方案,即重写sort()方法实现数值比较,确保数组按数值大小正确排序。了解这个细节对于优化JavaScript代码和避免排序错误至关重要。
摘要由CSDN通过智能技术生成

在平时进行数组排序时,常用的数组排序方法sort有时候并没有起到排序的作用,例如:

const arr = [152167]
console.log(arr.sort())

打印结果为:
在这里插入图片描述
很明显,sort并没有起到排序的作用,原因就在于sort()中没有传参,那么默认就是按照数组每个元素的 ASCII 字符顺序进行升序排列,正确方案:

const arr = [152167]
arr.sort(function (a, b) { // 对sort方法进行重写,本质是冒泡排序
  return a - b // a-b是从小到大排序,b-a是从大到小排序
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值