改变原数组
1.push()
push方法向数组后面插入一个元素,返回值是新数组的长度,改变原数组。
let arr = [1,2,3,4,5,6]
let result = arr.push(7)
console.log(result);
打印的结果:
2.pop()
pop方法删除数组后面的最后一个元素,返回值是删除的元素,改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.pop()
console.log(result);
打印的结果:
3.unshift()
unshift方法向数组前面添加元素,返回值为新数组的长度,改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.unshift(8)
console.log(result);
打印的结果:
4.shift()
shift方法删除数组第一个元素,返回值为删除的元素,改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.shift()
console.log(result);
打印的结果:
5.reverse()
reverse方法是翻转数组,返回值是新的数组,改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.reverse()
console.log(result);
打印的结果:
6.sort()
sort方法是将数组排序,返回值是新的数组,改变原数组。
let arr = [1,3,5,2,6,4]
let result =arr.sort()
console.log(result);
打印的结果:
7.splice()
splice方法删除元素,返回值为新的数组,改变原数组。
传入一个参数时:
let arr = [1,2,3,4,5,6]
let result =arr.splice(2)
console.log(result);
console.log(arr);
打印的结果:
传入两个参数时:
let arr = [1,2,3,4,5,6]
let result =arr.splice(2,2)
console.log(result);
console.log(arr);
打印的结果:
传入三个或三个以上参数时:
let arr = [1,2,3,4,5,6]
let result =arr.splice(2,2,7,8,9)
console.log(result);
console.log(arr);
打印的结果:
第一个参数:从哪一个元素开始删除(不包含这个元素)
第二个参数:删除元素的个数
第三个及以后的多个参数:表示添加的新元素,添加的位置从删除位置开始添加
不改变原数组
8.includes()
includes方法判断数组中是否包含该元素,返回值为true或false,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.includes(2)
console.log(result);
console.log(arr);
打印的结果:
9.join()
join方法将数组转换成字符串,返回值为字符串,不改变原数组。(默认用逗号隔开)
let arr = [1,2,3,4,5,6]
let result =arr.join()
console.log(result);
console.log(typeof result);
console.log(arr);
打印的结果:
10.slice()
slice方法截取数组的一部分,不包含头部,包含尾部,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.slice(2,5)
console.log(result);
console.log(arr);
打印的结果:
11.indexOf()
IndexOf方法查询元素下标,如果存在该元素返回该元素的索引值,如果不存在则返回-1,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.indexOf(2)
console.log(result);
console.log(arr);
打印的结果:
let arr = [1,2,3,4,5,6]
let result =arr.indexOf(7)
console.log(result);
console.log(arr);
打印的结果:
12.lastIndexOf()
lastIndexOf方法与IndexOf方法作用相同,只是从后往前找,不改变原数组。
13.find()
find方法查找满足条件的元素,查找到就返回满足条件的值,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.find((item)=>{
return item > 3
})
console.log(result);
console.log(arr);
打印的结果:
14.concat()
concat方法合并两个或多个数组,返回值为新的数组,不会改变原数组。
let arr = [1,2,3]
let arr1 = [4,5,6]
let result = arr.concat(arr1)
console.log(result);
console.log(arr);
打印的结果:
15.every()
every方法判断数组内所有元素是否满足条件,全部满足返回true,反之返回false,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.every(item => {
return item>3
})
console.log(result);
console.log(arr);
打印的结果:
16.some()
some方法判断数组内是否有一个满足条件,有一个满足返回true,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.some(item => {
return item>3
})
console.log(result);
console.log(arr);
打印的结果:
17.filter()
filter方法筛选数组中元素是否满足条件,如果满足条件,将满足条件的所有元素都返回,返回值是一个数组,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.filter(item => {
return item>3
})
console.log(result);
console.log(arr);
打印的结果:
18.map()
map方法对每一个元素都执行一个操作,返回一个新的数组,不改变原数组。
let arr = [1,2,3,4,5,6]
let result =arr.map(item => {
return item*2
})
console.log(result);
console.log(arr);
打印的结果:
遍历数组的方法
19.forEach()
let arr = [1,2,3,4,5,6]
arr.forEach(item => {
console.log(item);
});
打印的结果:
20.for...in
let arr = [1,2,3,4,5,6]
for(index in arr){
console.log(index);
}
注:for ... in 遍历的是每一项的索引值
打印的结果:
21.for ...of
let arr = [1,2,3,4,5,6]
for(item of arr){
console.log(item);
}
注:for ... of 遍历的是每一项
打印的结果: