1 <!--
2 * @Author: your TM_cc
3 * @Date: 2021-10-28 21:37:01
4 * @LastEditTime: 2021-10-29 11:54:35
5 * @LastEditors: Please set LastEditors
6 * @Description: In User Settings Edit
7 * @FilePath: \数组的乘余法.html
8 -->
9 <!DOCTYPE html>
10 <html lang="en">
11 <head>
12 <meta charset="UTF-8">
13 <meta http-equiv="X-UA-Compatible" content="IE=edge">
14 <meta name="viewport" content="width=device-width, initial-scale=1.0">
15 <title>数组</title>
16 </head>
17 <body>
18 <script>
19 /**
20 * concat()方法可以连接两个或多个数组,并将新的数组返回
21 * - 该方法不会影响到原数组
22 * - 也可以在数组后连接单个元素
23 */
24
25 var arr = ['孙悟空','猪八戒','沙和尚'];
26 var arr2 = ['唐僧','白龙马'];
27 var arr3 = ['红孩儿','牛魔王'];
28 var result = arr.concat(arr2,arr3,'二郎神','太上老君');
29
30 /**
31 * join()
32 * - 该方法可以将数组转换为一个字符串
33 * - 该方法不会对原数组产生影响,而是将转换后的字符串作为结果返回
34 * - 在join()中可以指定一个字符串作为参数,这个字符串将会成为数组中元素的连接符
35 * 如果不指定连接符,则默认使用逗号作为连接符
36 *
37 */
38
39 result1 = arr.join()
40
41 result2 = arr.join('-')
42
43 console.log(result1); // 孙悟空,猪八戒,沙和尚
44
45 console.log(result2); // 孙悟空-猪八戒-沙和尚
46
47 /**
48 * reverse()
49 * - 该方法用来翻转数组(前面的到后面,后面的到前面)
50 * - 该方法会直接修改原数组
51 */
52
53 arr2.reverse();
54 console.log(arr2); // 白龙马,唐僧
55
56 /**
57 * sort()
58 * - 可用来对数组的排序
59 * - 会影响原数组,默认按照Unicode编码排序
60 * - 即使对纯数字的数组排序,也会使用Unicode编码排序
61 * 所以对纯数字数组排序时,容易出现错误的结果
62 *
63 * - 可以自己制定排序规则
64 * 在sort()添加一个回调函数,来指定排序规则
65 * 回调函数中需要定义两个参数,浏览器会分别使用数组中的元素作为实参去调用回调函数
66 * - 浏览器会根据回调函数的返回值来决定元素的顺序
67 * 返回一个大于0的值,则元素交换位置
68 * 返回一个小于0的值,则元素位置不变
69 * 返回一个等于的值,则认为两元素相等,位置不变
70 *
71 * - 升序排列 : a-b
72 * - 降序排列 : b-a
73 */
74
75 var num = [2,5,8,2,1,33,11];
76
77 var num2 = [2,5,8,2,1,33,11];
78
79 console.log(num.sort()); //1, 11, 2, 2, 33, 5, 8
80
81 num2.sort(function(a,b){
82
83 /*if(a>b){
84 return -1;
85 }else if(a<b){
86 return 1;
87 }else{
88 return 0;
89 }*/
90
91 //升序排列 return a-b
92 //降序排列 return b-a
93 })
94
95
96 </script>
97 </body>
98 </html>