026_JavaScript数组排序

本文介绍JavaScript中数组排序的方法,包括sort()方法及其参数用法,通过示例演示如何对字符串和数字数组进行升序与降序排列,并展示reverse()方法的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. sort()方法

1.1. sort()方法用于对数组的元素进行排序。该方法是在原数组上进行排序, 而不是生成副本。

1.2. 语法

arrayObject.sort(sortby)

1.3. 参数

1.4. sort()方法返回对数组的引用。

1.5. 如果调用该方法时没有使用参数, 将按字母顺序对数组中的元素进行排序, 说得更精确点, 是按照Unicode字符编码的顺序进行排序。要实现这一点, 首先应把数组的元素都转换成字符串(如有必要), 以便进行比较。

1.6. 如果想按照其他标准进行排序, 就需要提供比较函数, 该函数要比较两个值, 然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数a和b, 其返回值如下:

  • 若a小于b, 在排序后的数组中a应该出现在b之前, 则返回一个小于0的值。
  • 若a等于b, 则返回0。
  • 若a大于b, 则返回一个大于0的值。

1.7. 对数字数组进行升序排序

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a - b});

1.8. 对数字数组进行降序排序

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b - a});

2. reverse()方法

2.1. reverse()方法用于颠倒数组中元素的顺序。该方法会改变原始数组, 而不是创建新的数组。

2.2. 语法

arrayObject.reverse()

2.3. reverse()方法返回对数组的引用。

3. 例

3.1. 代码

<!DOCTYPE html>
<html lang="zh-CN">
	<head>
		<meta charset="utf-8" />
		<title>数组排序</title>
	</head>
	<body>
		<script type="text/javascript">
			var fruits = ["Banana", "Orange", "Apple", "AaMango", "AAMango"];

			document.write('原始数组: ' + fruits + '<br />'); 
			var sortFruits = fruits.sort();
			document.write('使用sort()方法排序后的数组: ' + fruits + '<br />'); 
			document.write('sort()方法返回数组的引用, sortFruits: ' + sortFruits + '<br />');
			var reverseFruits = fruits.reverse(); 
			document.write('使用reverse()方法颠倒后的数组: ' + fruits + '<br />');
			document.write('reverse()方法返回数组的引用, reverseFruits: ' + reverseFruits + '<br /><hr />');

			var points = [40, 100, 1, 5, 25, 10];
			document.write('原始数组: ' + points + '<br />'); 
			points.sort(function(a, b){
				return a - b;
			}); 
			document.write('升序数组: ' + points + '<br />');
			points.sort(function(a, b){
				return b - a;
			}); 
			document.write('降序数组: ' + points + '<br />');
		</script>
	</body>
</html>

3.2. 效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值