关于javascript sort()排序你可能忽略的一点理解

 更新时间:2017年07月18日 11:55:23   作者:黑阔大人  
最近在研究Javascript发现了其中一些之前忽略的问题,所以想着总结分享出来,下面这篇文章主要给大家介绍了关于javascript sort()排序你可能忽略的一点理解,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

在Javascript数组排序中有一个sort()方法,sort()方法可以说分为两种,一种是文字数组排序,一种是数字数组排序。下面这篇文章主要和大家分享了关于最近学习javascript sort()排序发现了一点理解,下面话不多说了,来一起看看详细的介绍吧。

sort()排序的原理

最近在leetcode刷题的时候遇到一个排序问题之前一直都忽略了sort排序的原理,让我们看下w3c对于sort()的说明:

如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。

要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

这样就可以解释为什么[0,1,5,10,8]的升序排列会是[0,1,10,5,8]了


sort()排序参数的使用

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

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

所以得出如果想要升序排列的话通过a-b就可以实现 sort((a,b)=>a-b) ,反序也可以通过这个来做到:

总结

以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • DHTML form validation

    DHTML form validation

    DHTML form validation...
    2007-03-03
  • javascript脚本调试方法小结

    javascript脚本调试方法小结

    相信大家试过编写javascript脚本时发生这样或那样的错误,但是js并没有很好的调试方法,在这里介绍两个方法。
    2008-11-11
  • JS扁平化输出数组的2种方法解析

    JS扁平化输出数组的2种方法解析

    这篇文章主要介绍了JS扁平化输出数组的2种方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 30个高逼格代码的JavaScript高级单行代码

    30个高逼格代码的JavaScript高级单行代码

    这篇文章中列出了一个系列的 30 个 JavaScript 单行代码,它们在使用 vanilla js(≥ ES6)进行开发时非常有用,它们也是使用该语言在最新版本中为我们提供的所有功能来解决问题的优雅方式,将它们分为以下5大类:日期、字符串、数字、数组、工具
    2023-08-08
  • 详谈表单重复提交的三种情况及解决方法

    详谈表单重复提交的三种情况及解决方法

    下面小编就为大家带来一篇详谈表单重复提交的三种情况及解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • js中call()和apply()改变指针问题的讲解

    js中call()和apply()改变指针问题的讲解

    今天小编就为大家分享一篇关于js中call()和apply()改变指针问题的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 去除图像或链接黑眼圈的两种方法总结

    去除图像或链接黑眼圈的两种方法总结

    去除图像或链接黑眼圈的两种方法总结...
    2007-06-06
  • javascript中返回顶部按钮的实现

    javascript中返回顶部按钮的实现

    这篇文章主要介绍了使用javascript实现博客园页面右下角返回顶部按钮的思路及源码,非常不错,这里推荐给小伙伴们
    2015-05-05
  • JavaScript中输出</script>标签的方法

    JavaScript中输出</script>标签的方法

    这篇文章主要介绍了JavaScript中输出</script>标签的方法,在一些广告代码中经常会用到这个小技巧,需要的朋友可以参考下
    2014-08-08
  • javascript Three.js创建文字初体验

    javascript Three.js创建文字初体验

    这篇文章主要为大家介绍了Three.js创建文字初体验,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-11-11

最新评论