为啥sort((a,b) => a - b ? 1 : -1 )可以对时间戳排序,"sort((a,b) => a - b ? 1 : -1 )"表示啥意思
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥sort((a,b) => a - b ? 1 : -1 )可以对时间戳排序,"sort((a,b) => a - b ? 1 : -1 )"表示啥意思相关的知识,希望对你有一定的参考价值。
sort方法会循环取出数组的数值进行两两对比,如果前一个数(a)比后一个数(b)大,就把两个数对调,如果相等或a<b,就不变,这样当比较完毕后,数组中的元素就按由小到大的顺序重新排列了。其实可以简写为:
sort((a,b)=>a-b);
如果按由大到小的顺序排列,则是
sort((a,b)=>b-a); 参考技术A sort 是 js 的数组排序函数, 参数是一个回调函数, 回调函数有2个参数, 分别是当前数组元素与其前一个数组元素, 也就是你代码里的a 和 b, 数组的返回值决定了是否要交换 a 和 b 在数组中的顺序, 返回值小于0就表示要交换 a 和 b 在数组中的顺序, 否则不交换顺序
Json——sort
1、a-b升序
<script> var arr = [2, 3, 1, 5, 0]; function compare(a, b) { return a - b; } console.log(arr.sort(compare));//(5) [0, 1, 2, 3, 5] </script>
2、b-a降序
<script> var arr = [2, 3, 1, 5, 0]; function compare(a, b) { return b - a; } console.log(arr.sort(compare));//(5) [5, 3, 2, 1, 0] </script>
3、返回值:1升序,-1降序
<script> var arr = [2, 3, 1, 5, 0]; function compare(a, b) { if (a > b) { return -1; } else if (a < b) { return 1; } else { return 0; } } console.log(arr.sort(compare));//(5) [5, 3, 2, 1, 0] </script>
以上是关于为啥sort((a,b) => a - b ? 1 : -1 )可以对时间戳排序,"sort((a,b) => a - b ? 1 : -1 )"表示啥意思的主要内容,如果未能解决你的问题,请参考以下文章