JS常用数组方法整理
1.unshift()
在数组的第一个元素前面增加一个元素,
数组的长度会加1,
该方法会改变原来数组的长度,
返回值是数组新长度
var arr = [1, 2, 3]
arr.unshift(4)//arr = [4, 1, 2, 3]
2.push()
在数组的结尾追加元素,可以追加多个元素,
该方法会改变原来数组的长度,
返回值是数组新长度
var arr = [1, 2, 3]
arr.push(4)//arr = [1, 2, 3, 4]
3.splice(索引,删除的长度,要增加的元素)
增:从索引元素后面增加
要增加的元素可以是任意类型,个数不限
var arr = [1, 2, 3]
arr.splice(1, 0, 4)//arr = [1, 4, 2, 3]
删:从索引元素后面删除,个数不限
var arr = [1, 2, 3]
arr.splice(1, 1)//arr = [1, 3] 返回值是被删除的元素2
4.shift()
删除第一个数组元素,不带参数
数组的长度会减1,并且返回的是删除的第一个元素
会影响原数组
var arr = [1, 2, 3]
arr.shift()//arr = [2, 3]
5.pop()
删除数组的最后一个元素
数组的长度会减1,并且返回的是删除的最后一个元素
会影响原数组
var arr = [1, 2, 3]
arr.pop()//arr = [1, 2]
6.concat(arr1,arr2…)
合并两个或多个数组,
该方法不会改变现有的数组,
而仅仅会返回被连接数组的一个副本
var arr1 = [1,2,3]
var arr2 = [4,5,6]
var arr = arr1.concat(arr2)
console.log(arr);//arr = [1, 2, 3, 4, 5, 6]
7.sort()
对数组进行排序
参数:如不写参数,默认是按照字符编码的顺序进行排序,
如写参数,参数fn是表示排序规则的函数
小到大:sort( (a,b)=> a-b )
var arr = [8,3,5,1,6,2,4,7]
arr.sort( (a,b)=> a-b)
console.log(arr);//arr = [1, 2, 3, 4, 5, 6, 7, 8]
大到小:sort( (a,b)=> b-a)
var arr = [8,3,5,1,6,2,4,7]
arr.sort( (a,b)=> b-a)
console.log(arr);//arr = [8, 7, 6, 5, 4, 3, 2, 1]
8.reverse()
翻转数组
在原数组上翻转
var arr = [8,3,5,1,6,2,4,7]
arr.reverse()
console.log(arr);//arr = [7, 4, 2, 6, 1, 5, 3, 8]
9.join(“分隔符”)
把数组转变成字符串
var arr = [8,3,5,1,6,2,4,7]
var str = arr.join('-')
console.log(str);//8-3-5-1-6-2-4-7
10.str.split(“分隔符”)//字符串转数组方法
默认整个字符串变成一个数组的唯一一个元素
var str = '12,34,56'
var arr = str.split(',')
console.log(arr);//["12", "34", "56"]
11.slice(star,end)
从数组的第start个开始截取,到第end个,不包括end
不写任何参数,默认复制整个数组
12.indexOf(要查找的元素,开始检索的位置)
如果省略第二个参数,
则将从字符串的首字符开始检索,
找到返回索引
如果找不到返回-1
13.lastIndexOf(要查找的元素,开始检索的位置)
从后往前查找数组中某个元素的索引
14.forEach()
循环:对数组进行遍历循环,对数组中的每一项运行给定函数。
这个方法没有返回值
15.map()
会遍历当前数组,调用参数中的方法,
返回当前方法的返回值
例:
var arr = [2,4,6,8]
var arr2 = arr.map( (item) => item*item );
console.log(arr2)//[4, 16, 36, 64]
16. filter()
过滤,循环数组,返回数组中符合参数方法条件的元素
var arr = [2,4,6,8]
var arr2 = arr.filter( (item)=>item>2 )
console.log(arr2);//[4,6,8]
17.every()
检测数值元素的每个元素是否都符合条件
全部符合则返回ture,否则返回else
18.isArray()
检测某个元素是否是数组类型
19.find
查找出第一个符合条件的数组成员,并返回该成员,如果没有找到就返回undefine