Javascript里如何对数组进行排序?
在网页开发里,我们经常会用到Javascript脚本。在写JS代码过程中,我们经常会与数组打交道,对数组进行添加,删除等操作,有时还会对数组进行排序。下面我们一起了解下怎么对数组进行排序。
操作方法
- 01
先写上我们的示例代码,如图,我们定义了一个数组arr,数组包括有几个字母,不按顺序的,要对数组进行排序,我们可以直接调用sort方法。再加上一些输出语句,console.log是指在浏览器的调试控制台里输出内容。
- 02
运行页面,我们在控制台里看下结果,如图,数组调用sort方法后,就按字母的升序做好排序了。
- 03
我们修改下代码,把数组内容从字符串改成数字,然后再调用sort方法,代码如图
- 04
修改后,运行页面,再看下结果,从图中可以看到,我们的数组并没有按数字从小到大排序。
- 05
为什么这样?因为默认情况下,数组排序都是按字符串来排序的,而不管数组内容是数字还是字符串。 那怎么让数组按数字大小来排序呢?我们需要为sort方法传一个参数,这个参数是一个方法,我们先定义下这个方法。该方法很简单,就是比较二个数的大小,如图,
- 06
然后修改下sort排序方法,把刚才定义的方法名传进来。
- 07
再次运行页面,可以看到现在的数组就是按数字从小到大排序的。
- 08
如果要改成从大到小排序呢?也很简单,在numeric_sort方法里,原来是n1>n2时返回true的,改成n1<n2时返回true就行了。
- 09
再次运行,就可以得到数组从大到小的结果了。
赞 (0)