sort( )
-可以用来对数组中的元素进行排序
-也会影响原数组,默认会按照Unicode编码进行排序
即使对于纯数字的数组,使用sort()排序时,也会按照Unicode编码来排序,
所以对数字进排序时,可能会得到错误的结果。
我们可以自己来指定排序的规则
我们可以在sort()添加一个回调函数,来指定排序规则,回调函数中需要定义两个形参,
浏览器将会分别使用数组中的元素作为实参去调用回调函数使用哪个元素调用不确定,但是肯定的是在数组中a一定在b前边
-浏览器会根据回调函数的返回值来决定元素的顺序,
如果返回一个大于0的值,则元素会交换位置
如果返回一个小于0的值,则元素位置不变
如果返回一个日,则认为两个元素相等,也不交换位置
例如:
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
- <meta http-equiv="X-UA-Compatible" content="IE=edge" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Document</title>
- </head>
- <body>
- <script>
- var arr = [2, 4, 6, 7];
- arr.sort(function (a, b) {
- //前边的大
- if (a > b) {
- return 1;
- } else if (a < b) {
- return -1;
- } else {
- return 0;
- }
- });
- console.log(arr);
- </script>
- </body>
- </html>
