ES9 对 Array.prototype.sort() 的改进

阅读时长 3 分钟读完

在 ES9 中,对 Array.prototype.sort() 进行了改进,在排序时有了更多的控制和灵活性,让我们来了解一下。

什么是 Array.prototype.sort()?

Array.prototype.sort() 是 JavaScript 中内置的用于数组排序的方法。默认情况下会按照 Unicode 码点进行升序排序。

ES9 的改进

ES9 对 Array.prototype.sort() 的改进主要体现在 sort() 方法可以接收一个排序函数作为参数。这个排序函数必须返回一个数字,表示排序的顺序。

-- -------------------- ---- -------
-------- ---------- -- -
  -- -- - -- -
    ------ ---
  -
  -- -- - -- -
    ------ --
  -
  ------ --
-

----- --- - --- -- -- -- -- ---
------------------ -- --- -- -- -- -- --

这样我们就可以自定义排序规则了。排序函数有两个参数,代表需要比较的两个元素。如果返回值小于 0,表示第一个元素应该排在第二个元素前面;如果返回值大于 0,表示第二个元素应该排在第一个元素前面;如果等于 0,表示两个元素顺序不变。

反向排序

除了自定义排序规则,ES9 还支持数组反向排序。传递一个函数作为参数时,可以使用函数的 reverse() 方法。

使用引用类型

对于引用类型,我们可以使用相同的方式进行排序,并且可以自定义排序规则。

总结

ES9 对 Array.prototype.sort() 的改进给我们提供了更多的控制和灵活性,可以自定义排序规则以及支持数组反向排序。在排序时使用这些新特性,能够更加高效地实现业务需求。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64fbe0b0f6b2d6eab31f71f6

纠错
反馈