1、concat():可以连接两个或多个数组,并将新数组返回
该方法不会对原数组产生影响
使用变量去接收
- var arr=[3,4,6,7,7];
- var arr1=["hsdij","hisu"];
- var arr2=["栈的","等候"]
- var result=arr.concat(arr1);
- console.log(result)
- var result1=arr.concat(arr2,arr1);
- console.log(result1)
- console.log(arr)
- console.log(arr1)
- console.log(arr2)

2、 join():该方法可以将数组转换成字符串,
不会改变原数组,而是将转换后的字符串作为结果返回
- var arr=[3,4,6,7,7];
- var arr1=["hsdij","hisu"];
- var arr2=["栈的","等候"]
- var result=arr.join();
- var result1=arr2.join();
- console.log(result)
- console.log(arr)
- console.log(result1)
- console.log(arr2)

join()默认使用,连接===》可以改变连接符 var result1=arr2.join("");//表中间不间隔

3、reverse():该方法用于反转数组-----------该方法直接修改原数组arr.reverse();
4、sort():对数组中的元素镜像排序=====》会影响原数组==》默认按照unicode编码排序
如果需要进行倒序-》使用reverse()
var arr=[3,4,6,7,7];
var arr1=["hsdij","hisu"];
var arr2=["栈的","等候"]
arr.sort();
arr.reverse();
console.log(arr);

注意:对于纯数字的数组,使用sort()排序时候,也会按照unicode编码来排序,所以对数字进行排序的时候,可能得到错误的结果。
所以我们可以在sort()添加回调函数,来指定排序规则,回调函数中需要定义两个形参,浏览器分别会将数组中的元素作为实参去传递给回调函数
var arr=[3,4,6,7,9];
arr.sort(function(a,b){
console.log('a='+a);
console.log('b='+b);
}
);/发现会打印值。且b为索引小的值

浏览器会根据回调函数的返回值来决定元素的顺序:
返回值小于0会交换顺序:
返回值大于等于0不会会交换顺序:
- var arr=[3,4,5,6,7,8,9954,3];
-
- arr.sort(function(a,b){
- if(a<=b) return 1;//前面大 不交换
- else if(a>b) return -1;//前面小 交换位置
- }
- );
- console.log(arr)

a-b升序 b-a降序
- var arr=[3,4,5,6,7,8,9954,3];
-
- arr.sort(function(a,b){
- return a-b;//后面大于前面=正值 不交换 升序
- //前面大于后面交换
- });
- console.log(arr)