首页 > 代码库 > sort排序错乱问题
sort排序错乱问题
对于sort排序 之前就遇到过这种问题 不过没有在意 今天遇到 就找了一下原理
在这种sort排序中可以看到排序几乎没有什么问题 就是5比较特殊 会在20是的后面
~ sort()方法开始的时候会调用数组中每个项的toString()方法,这个方法会使数组的每一项变成字符串,然后去比较字符串,即使传进去的每一个都是数字,最终也会比较转型后的字符串,sort排序是根据测试字符串的结果改变原来的顺序,在比较中 5会在10、15....的后面,所以尽管方法很快 但是也未免会有差错
所以在sort得方法里 可以通过一个比较函数的传参 进行判断
不拷贝代码进来了 自己打一遍 记忆力会更好
这样sort排序就不会出问题了 呢? 如果你不想要这样的效果 完全可以 自己通过reverse()去改变数组的顺序
~ 我只是前端小白一个 写博客只是为了方便自己看 也希望可以帮到别人解惑。可喷可不喷
sort排序错乱问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。