1、unshift():头部添加,可以添加多个,返回添加后数组的长度
let arr = [1,2,3];
let arr1 = arr.shift();
console.log(arr); // [2,3]
console.log(arr1);// 1
2、shift():头部删除,只能删除一个,返回删除后的数据
let arr = [1,2,3];
let arr1 = arr.unshift(4,5);
console.log(arr); // [4,5,1,2,3]
console.log(arr1); // 5
3、push():尾部添加,可以添加多个,返回添加后数组的长度
let arr = [1,2,3];
let arr1 = arr.push(4,5);
console.log(arr); //[1,2,3,4,5]
console.log(arr1);// 5
4、pop():尾部删除,只能删除一个,返回删除后的数据
let arr = [1,2,3];
let arr1 = arr.pop();
console.log(arr); // [1,2]
console.log(arr1); // 3
5、forEach():数组遍历。
遍历一个数组。有3个参数
参数1:数组中的每一项
参数2:数组中的每一项下标
参数3:当前遍历的数组
let arr = [1,2,3];
arr.forEach((item,index,arr1)=>{
console.log(item);
// 每一项
console.log(index);
// 下标
console.log(arr1);
// 当前遍历的数组
})
注意:没有返回这,不能停止循环
6、filter():数组的过滤
用于数组的过滤,有返回值。返回一个新数组,把符合条件的过滤出来,或不符合条件的过滤出去。
参数1:每一项
参数2:当前下标
参数3:过滤的数组
let arr = [1,2,3];
let arr2 = arr.filter((item,index,arr1)=>{
return item ===1
});
console.log(arr); // [1,2,3]
console.log(arr2); // [1]
7、 concat():数组的合并
用于2个或多个数组的合并,返回一个新数组。
语法:往那个数组中合并.concat(数组1,数组2…)
let arr = [1, 2, 3];
let arr1 = [4, 5, 6];
let arr2 = [7, 8, 9]
let arr3 = arr.concat(arr1, arr2);
console.log(arr); // [1, 2, 3]
console.log(arr1); // [4, 5, 6]
console.log(arr2); // [7, 8, 9]
console.log(arr3); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
8、every():检测数组中所有元素是否符合条件
用于检测数组中所有的元素都是否符合条件,如果有一个不符合就会返回false。都符合返回true,必须return
let arr = [1, 2, 3];
let flag = arr.every((item, index, val) => {
return item == 1;
})
console.log(flag); // false
9、find():查找符合条件的第一个元素
用于查找数组中某一个符合条件的元素,返回这个元素,必须return
let arr = [{age:1}, 2, 3];
let flag = arr.find((item) => {
return item.age == 1;
})
console.log(flag); // {age: 1}
10、findIndex():查找符合条件的第一个元素下标
用于查找数组中某一个符合条件的元素下标,返回这个下标,必须return
let arr = [{age:1}, 2, 3];
let flag = arr.findIndex((item) => {
return item.age == 1;
})
console.log(flag); // 0
11、flat():提取数组中的数组
多维数组转为一维数组
参数:转换几层数组,不会改变原数组
let arr = [1, 2, 3,[4,5,6,[7,8,9],[10,11,12,[13]]]];
let flag = arr.flat(3);
console.log(flag); // (7) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
12、join():数组转字符串
用于把数组转换为字符串。
参数:数组之间的逗号用什么代替
let arr = [1, 2, 3,4];
let flag = arr.join("|");
console.log(flag); // 1|2|3|4
13、map():对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
var arr = [1, 2, 3, 4, 5];
var arr2 = arr.map(function(item){
return item*item;
});
console.log(arr2); //[1, 4, 9, 16, 25]
14、reduce():计算
用于计算数组相加的和或相乘 等
参数1:代表第一项
参数2:代表下一项
必须有return
let arr = [1, 2, 3,4];
let flag = arr.reduce((total,num)=>{
return total + num;
});
console.log(flag); // 10
15、splice():删除
用于截取一段数组
参数1:从下标几开始
参数2:删除几个
参数3:删除的地方用什么代替
截取时包含 开始下标,不包含结束下标,会改变原数组
let arr = [1, 2, 3,4];
let flag =arr.splice(0,2,'a','b','c');
console.log(arr); // ["a", "b", "c", 3, 4]
console.log(flag); // [1, 2]
16、some():数组中是否包含指定元素
检测数组中是否包含指定元素,如果有一个元素符合就返回true,否则返回false,必须有return,不会改变原数组
let arr = [1, 2, 3,4];
let flag =arr.some((item,index)=>{
return item === 5;
});
console.log(arr); //
console.log(flag); // false
17、sort():数组排序
数组的排序
参数1:当前项
参数2:下一项
必须return,会改变原数组
let arr = [1, 2, 3, 4];
let flag = arr.sort((a, b) => {
return b - a
});
console.log(arr); // [4, 3, 2, 1]
console.log(flag); // [4, 3, 2, 1]
18、slice():截取
用于截取数组元素
参数1:从下标几开始
参数2:到参数几结束
截取的数据包含开始,不包含结束,不会改变原数组
let arr = [1, 2, 3, 4];
let flag = arr.slice(0,3,);
console.log(arr); // [1, 2, 3, 4]
console.log(flag); // [1, 2, 3]