JavaScript sort() 方法

Array 对象参考手册 JavaScript Array 对象

数组排序:

<p id="demo">单击按钮升序排列数组。</p>
<button onclick="myFunction()">点我</button>
<script>
  function myFunction() {
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort();
    var x = document.getElementById("demo");
    x.innerHTML = fruits;
  }
</script>

尝试一下 »


定义和用法

sort() 方法用于对数组的元素进行排序。

排序顺序可以是字母或数字,并按升序或降序。

默认排序顺序为按字母升序。

注意:当数字是按字母顺序排列时"40"将排在"5"前面。

使用数字排序,你必须通过一个函数作为参数来调用。

函数指定数字是按照升序还是降序排列。

这些说起来可能很难理解,你可以通过本页底部实例进一步了解它。

注意: 这种方法会改变原始数组!。


浏览器支持

Internet ExplorerFirefoxOperaGoogle ChromeSafari

所有主要浏览器都支持sort()。


语法

array.sort(sortfunction)

参数 Values

参数 描述
sortfunction 可选。规定排序顺序。必须是函数。

返回值

Type 描述
Array 对数组的引用。请注意,数组在原数组上进行排序,不生成副本。

技术细节

JavaScript Version: 1.1

更多实例

数字排序(数字和升序):

<p id="demo">单击按钮升序排列数组。</p>
<button onclick="myFunction()">点我</button>
<script>
  function myFunction() {
    var points = [40, 100, 1, 5, 25, 10];
    points.sort(function(a, b) {
      return a - b
    });
    var x = document.getElementById("demo");
    x.innerHTML = points;
  }
</script>

尝试一下 »


数字排序(数字和降序):

<p id="demo">单击按钮降序排列数组。</p>
<button onclick="myFunction()">点我</button>
<script>
  function myFunction() {
    var points = [40, 100, 1, 5, 25, 10];
    points.sort(function(a, b) {
      return b - a
    });
    var x = document.getElementById("demo");
    x.innerHTML = points;
  }
</script>

尝试一下 »


数字排序 (字母和降序):

<p id="demo">单击按钮排列数组。</p>
<button onclick="myFunction()">点我</button>
<script>
  function myFunction() {
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort();
    fruits.reverse();
    var x = document.getElementById("demo");
    x.innerHTML = fruits;
  }
</script>

尝试一下 »


Array 对象参考手册 JavaScript Array 对象