数组常用方法:
1,arr.push()
在数组的末尾添加一个元素 返回新数组的的长度 原数组改变
var arr = [1, 2, 3]
var arr2 = [3, 4, 5]
arr.push(1)
console.log(arr); //[1,2,3,1]
2,arr.pop()
删除数组的最后一个元素 返回被删除的元素 原数组改变
var arr = [1, 2, 3]
var arr2 = [3, 4, 5]
arr.pop()
console.log(arr); //[1,2]
3,arr.unshift()
在数组的头部添加一个或多个元素 返回新数组的长度 原数组改变
var arr = [1, 2, 3]
arr.unshift(5, 6)
console.log(arr); //[5,6,1,2,3]
4,arr.shift()
删除数组的第一个元素 返回被删除的元素 原数组改变
var arr = [1, 2, 3]
arr.shift()
console.log(arr); //[2,3]
5,arr.indexOf(item)
在数组中 从前往后找 第一次出现有item的地方 若找到了 返回第一次出现的索引值 若没找到 返回-1
可以用来数组去重
var arr = [1, 2, 3]
console.log(arr.indexOf(2)); //1
console.log(arr.indexOf(5)); //-1
6,arr.lastIndexOf(item)
在数组中 从后往前找 第一次出现有item的地方 若找到了 返回第一次出现的索引值 若没找到 返回-1
var arr = [1, 2, 2, 3]
console.log(arr.lastIndexOf(2)); //2
console.log(arr.lastIndexOf(5)); //-1
7,arr.splice(start,cont)
在数组中从start索引开始删除cont个元素, 并返回被删除的元素组成的数组**, 若有两个以上的参数 后续参数 会添加在start索引的位置
var arr = [1, 2, 2, 3]
console.log(arr.splice(0, 2, 5, 6, 7)); //[1,2]
console.log(arr); //[5,6,7,2,3]
8,arr.slice(start,end) (参数可以为负值)
方法中两个参数都是可选 如果没有参数 则浅拷贝arr 如果有start 则从start索引开始 截取所有的数组元素 如果有start和end 则截取从start到end索引的数组元素
var arr = [1, 2, 2, 3]
console.log(arr.slice()); //[1,2,2,3]
console.log(arr.slice(2)); //[2,3]
console.log(arr.slice(1, 3)); //[2,2]
9,arr.includes(value)
判断arr中是否有value元素 返回true/false
var arr = [1, 2, 2, 3]
console.log(arr.includes(1)); //true
10,arr.join()
将数组连接成字符串 默认是用逗号连接 可以自己定义 原数组不变
var arr = [1, 2, 2, 3]
console.log(arr.join()); //'1,2,2,3'
console.log(arr);
console.log(arr.join('')); //'1223'
console.log(arr.join('-')); //'1-2-2-3'
11,arr.map(function)
数组中所有元素执行回调函数 并返回新数组
var arr = [1, 2, 2, 3]
console.log(arr.map(function(i, index, arr) {
console.log(i); //输出每个数组元素
console.log(index); //输出元素i 对应的索引
console.log(arr); //输出原数组arr
}));
12,arr.forEach(function)
数组中所有元素执行回调函数 不能终止跳出
var arr = [1, 2, 2, 3]
arr.forEach(function(i, index, arr) {
console.log(i); //每个元素的值
console.log(index); //i 对应的索引
console.log(arr); //原数组
});
13,arr.filter(function)
过滤数组 返回过滤后的新数组 (返回满足过滤条件的新数组)