持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第21天,点击查看活动详情
平常在数据进行操作时,数组的方法会经常用到,今天一起来学习一下数组的常用方法吧~!
数组的常用方法
**concat()** 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
**find()** 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
**findIndex()**方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1。
**includes()** 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false。
**indexOf()**方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。 (通常用它判断数组中有没有这个元素)
**join()** 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。
**pop()**方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。
**push()** 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。
**shift()** 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。
**unshift()** 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度(该方法修改原有数组 ) 。
**splice()** 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。
由被删除的元素组成的一个数组。如果只删除了一个元素,则返回只包含一个元素的数组。如果没有删除元素,则返回空数组。
**reverse()** 方法将数组中元素的位置颠倒,并返回该数组。该方法会改变原数组。
**sort()** 方法用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的
数组的循环方法
**every()** 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。所有的元素都要符合条件,才会返回true
arr.every (value,index)=>{})
**filter()** 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。不会改变原数组
arr.filter(value,index)=>{})
**forEach()** 方法对数组的每个元素执行一次提供的函数。
arr.forEach(value,index,arr)=>{})
**some()** 方法测试是否至少有一个元素可以通过被提供的函数方法。该方法返回一个Boolean类型的值。类似查找
arr.some(value,index)=>{})
map返回一个新数组,不会改变原数组,要return
arr.map(value,index)=>{})
reduce数组求和,参数常用的两个上一项
sum:上一次回调的返回值,默认值为第一个元素的值
value:循环遍历的元素,默认下标从1开始
index:循环遍历的下标,默认从1开始
arr.reduce (sum,value,index)=>{
return sum+value
},0)
#因为遍历是从1开始的,所以碰到空数组时,reduce方法会报错,防止放错将sum的默认值改为0,那么遍历循环就会从0下标开始
for of 遍历数组
Array.from:将伪数组转成真数组