数组方法
1.concat() 合并数组,不改变原数组
let arr = [1, 2, 3];
let arr1 = ["a", "b", "c"];
let arr2 = arr.concat(arr1)
console.log(arr2);// [1, 2, 3, "a", "b", "c"]
2.push() 把里面的内容添加到数组末尾,并返回修改后的长度
let arr = [1, 2, 3];
console.log(arr.push(6)); // 新数组的长度 4
3.pop() 移除数组最后一项,返回移除的那个值,减少数组的length
let arr = [1, 2, 3];
console.log(arr.pop());// 移除后新数组的长度 4
5.unshift()将参数添加到原数组开头,并返回数组的长度
let arr = [1, 2, 3];
console.log(arr.push(6)); // 新数组的长度 4
5.shift() 删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined
let arr = [1, 2, 3];
console.log(arr.shift(2)); //1 删除的值的下标
6.sort() 将数组里的项从小到大排序
let arr = [3,2,7,4,6];
console.log(arr.sort());// [2, 4, 6, 7]
7.reverse() 反转数组项的顺序
let arr = [3,2,7,4,6];
console.log(arr.reverse());// [6, 4, 7, 2, 3]
8.slice() 删除元素 该方法两个参数,第一个参数删除开始的下标,第二个是结束的下标但不包含结束的下标,如果第二个参数为没有,则删除第一个参数对应的下标到数组结尾,另外,另个参数都可以为负数
let arr = [3,2,7,4,6];
console.log(arr.slice(1,3));//[2, 7]
console.log(arr.slice(-3,-1));//[ 7,4]
9.splice() 有删除,替换,插入的功能;可以传3个参数,第一个开始的下标,第二个 删除/替换 的元素个数,第三个 替换/插入 的数据 当第二个参数为0时就是插入的功能
let arr = [3, 2, 7, 4, 6];
let arr1 = arr.splice(1, 2, 112, 33, 444)
console.log(arr1); //[2, 7]
console.log(arr); //[3, 112, 33, 444, 4, 6]
10.indexOf() 接受两个参数,第一个为要查找的项,第二个为开始查找的位置下标,如果查到第一个,就停止查找,也就是不会查找后续的元素, 返回值当找的到返回找的的元素的下标,找不到时返回-1
let arr = [3, 2, 7, 4, 6];
console.log(arr.indexOf(2,3));//-1
console.log(arr.indexOf(7,1));//2
11.lastIndexOf()接收两个参数:要查找的项和(可选的)表示查找起点位置的索引, 从数组的末尾开始向前查找
let arr = [3, 2, 7, 4, 6];
console.log(arr.lastIndexOf(2,1));//1
12.join(“要加引号”)就是把数组转换成字符串,以括号里的符号连接,不写默认的是逗号( ,)
let arr = [3, 2, 7, 4, 6];
console.log(arr.join());//3,2,7,4,6
console.log(arr.join("-"));//3-2-7-4-6
数组高阶函数
13.forEach(遍历)
let arr = [3, 2, 7, 4, 6];
arr.forEach((item, index) => {
console.log( `元素:${item} 下标${index}`);
});
运行结果如下
14.filter(过滤,返回新数组)
let arr = [3, 2, 7, 4, 6];
console.log(arr.filter((item) => {
return item > 3
})); //[7, 4, 6]
15.map(映射,返回新数组) 不改变原数组
let arr = [3, 2, 7, 4, 6];
console.log(arr.map((item) => {
return item * 10
})); //[30, 20, 70, 40, 60]
16.some(判断是否含有符合条件的元素,返回布尔值) 只要有一个满足条件就返回ture 一个都不满足才返回false
let arr = [3, 2, 7, 4, 6];
console.log(arr.some((item) => {
return item > 3
}));//true
17.every(判断是否全部元素符合条件,返回布尔值) 只要有一个不满足条件就返回false
let arr = [3, 2, 7, 4, 6];
console.log(arr.every((item) => {
return item > 3
}));//false
18.reduce(累加)
let arr = [3, 2, 7, 4, 6];
console.log(arr.reduce((a, b) => {
return a + b
})); //22