1.concat(元素)
功能:合拼数组,添加一些元素。
参数:
如果不是数组,则是将参数添加到数组的后面。
如果是数组,则将数组中的所有元素一个一个添加到数组的后面。
返回值:不会修改原数组。返回一个新数组。
案列:
var arr = new Array(10,20,30);
var arr2 = new Array(40,50);
var ar = arr.concat(arr2);
结果var ar = arr.concat(10,20,30,40,50);
2.slice(start,end)
功能:获取当前数组的指定区域的元素。含头不含尾。
start:开始获取元素的索引。
end:结束获取元素的索引。
返回值:新数组。
案列:
(10,20,30,40,50)
0, 1,2 , 3 , 4 数组排序名
var arr = new Array(10,20,30,40,50);
含头不含尾
var slice = arr.slice(1,5) 获取数组1-5的值。可以取到最后一个值。
console.log(slice)
3.splice(重点)
功能:可对数组中的元素进行增删改;
格式 :数组名 .splice(start,length,【数组1,数组2.....】)
start:开始截取的索引
length:截取的长度
从第三个参数开始:会在start位置的前面,插入新的元素。
返回值:截取的数组,会修改原数组。
删除:splice(start,length)
修改:splice(start,修改的元素的长度,修改后的元素)
新增:splice(新增位置的后面的索引,0,新增的元素)
案列:
var arr = new Array(10,20,30,40,50);
新增数组元素 删除数组元素 修改数组元素
var splice =arr.splice(2,0,24); var splice =arr.splice(2,3) var splice =arr.splice(1,1,21)
结果:(6) [10, 20, 24, 30, 40, 50] 结果:(3) [10, 20] 结果:(5) [10, 21, 30, 40, 50]
在数组2的前面添加24元素 此时删除了2到3的数组元素 此时把数组1的数组的元素修改为21元素
控制台输出:console.log(arr)
4.join()
格式:数组名.join(字符串)
功能:将数组中的元素,用传入的字符串拼接。
返回值:拼接好的字符串
var arr = new Array(10,20,30,40,50);
var str = arr.join("_");
console.log(str);
结果:10_20_10_40_50
5.reverse()
功能:反转数组,将数组的元素按照反向重新排列一次。
格式:数组名.reverse();
案列:
var arr = new Array(10,20,10,40,50);
var reverse = arr.reverse();
console.log(reverse);
结果:(5) [50, 40, 10, 20, 10];
6.sort()
功能:对数组的元素进行排序
格式:数组名.sort();
默认是按照编码的顺序排序,如果需要对数值进行大小的比较,需要我们自定义规则。
按顺序排大小规定写法:
var arr2 =new Array(14,6,56,67,83);
console.log(arr2.sort(function(value1,value2){
return value1 - value2;
}));
7.indexof() 重点
功能:在数组中查找元素,返回第一个找到的元素的下标。
格式:数组中查找.indexof(item,【start】)
参数:
item:要查找的元素
start:查找开始的下标,默认是0
返回值:
如果存在,返回第一个找到的下标
如果不存在,返回-1;
案列:
var arr = new Array(10,20,30,20,40,50);
var index = arr.indexOf(10,1);
10:是要找的重复数组元素。1:是从数组20开始找有没有重复的10.
console.log(index);
8.forEach()重点
功能:与for一样,遍历数组。
var arr = new Array(10,20,30,40,50);
arr.forEach(function(item,index,arr){
console.log("元素下标:"+index+",元素:"+item);
});
参数:
item:当前循环的元素,相当于for循环中的arr【i】;
index:当前循环元素的索引,下标,相当于for循环中的i。
arr 当前循环的数组。相当于for循环的arr。
9.filter()
功能:过滤原数组的元素,把符合条件的放入一个新的数组中,不会修改原数组。
返回值:一个新的数组,
格式:
arr. filter(function(item,index,arr){
return 条件判断;
})
参数:
item:当前循环的元素 相当于for循环中的arr[i]
index:当前循环元素的索引,下标 相当于for循环中的i。
arr 当前循环的数组。 相当于for循环中的arr,
10.every() 重点
作用:判断原数组中每一个元素是不是符合条件。
返回值:布尔值 如果都满足,返回true,如果有一个不满足,就是false。
格式:
数组名.every(function(item,index,arr){
return 条件判断。
})
11.some()
作用:判断原数组中是否有一个元素符合条件。
返回值:布尔值,只有一个满足,返回true=对,如果都不满足返回fasle=错。
12.map()
遍历数组,与foreach用法一样,唯一的区别在于foreach没有返回值, map有返回值。
没有函数名的函数我们叫做匿名函数