前端——常见数组方法汇总

159 阅读2分钟

前言:今天把一些数组方法进行一个汇总,加深加深印象,每一个都查了一下mdn,加深一下理解。

  • push() 将一个或多个元素添加到数组的末尾,并返回该数组的新长度arr.push(element1,...,elementN)
  • unshift() 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度arr.unshift(element1, ..., elementN)
  • pop() 方法从数组中删除最后一个元素,并返回该元素的值。此方法会更改数组长度 pop()
  • shift() 方法从数组中删除第一个元素,并改变该元素的值。此方法改变数组长度 arr.shift()
  • splice() 方法在数组任意位置添加替换或删除元素,原数组发生改变,返回删除的元素组成的数组.第一个参数是要修改的地方的索引下标,第二个参数从第一个参数的下标开始要删除的个数,第三个参数是要添加的元素 splice(index,deleteCount,item1,...,itemN)
  • concat() 合并两个或多个数组,不会改变现有数组,返回新数组(浅拷贝)。 let newArr = arr1.concat(arr2)
  • every() 方法判断数组中是否所有元素都满足条件(逻辑与&&),返回一个布尔值
let arr = [88, 90, 55, 60, 100]
let newArr = arr.every(item => item % 2 == 0)
console.log(newArr);
  • some() 方法判断数组中是否有满足条件(逻辑或||),返回一个布尔值
let arr = [88, 90, 50, 60, 100]
console.log(arr.some(item => item % 2 == 1))
  • filter() 方法筛选数组,得到满足筛选条件的新数组,最终返回一个满足条件的新数组
let arr = [188, 98, 288, 600, 800]
let newArr1 = arr.filter(item => item <= 300)
 console.log(newArr1);
  • findIndex() 方法找元素下标,找到了返回元素下标,没找到返回-1.跟indexof作用一致。(1)数组中元素是值类型:indexof (2)数组中元素是引用类型: findIndex
let arr = [
            { name: '张三', age: 20 },
            { name: '李四', age: 20 },
            { name: '王五', age: 20 }
        ]
        console.log(arr.findIndex(item => item.name == '李四'));
  • indexOf() 方法找元素下标,找到了返回元素下标,没找到返回-1.
const arr = [10, 20, 30, 40, 50, 60]
console.log(arr.indexOf(30));
  • forEach() 遍历数组并给每个元素执行一次给定函数(相当于for循环)
const array1 = ['a', 'b', 'c'];
array1.forEach(element => console.log(element));
  • Array.from() 方法将伪数组转换为真数组 Array.from(伪数组)
  • Array.isArray() 方法用于判断传递的值是否是一个数组,返回布尔值 Array.isArray(obj)
  • join() 方法将数组/伪数组拼接成字符串并返回,默认逗号分隔。 arr.join('')
  • map() 方法映射数组,得到映射之后的新数组
let arr = [88, 90, 50, 60, 100]
console.log(arr.map(item => item * 0.5));
  • reduce() 数组累加器方法,对数组每一个元素执行一次回调函数,累加最后一次回调的结果;默认下标不是从0开始的,而是从1开始,一般需要设置默认值;return值就是下一次sum的值
let arr = [20,55,60]
console.log( arr.reduce( ( sum,item )=>sum + item , 0 ) )
  • reverse() 方法将数组中的元素的位置颠倒,并返回该数组。 arr.reverse()
  • sort() 方法对数组进行排序
const num = [4,58,4,363,1,825,]
console.log(num.sort((a, b) => a - b))
  • toSting() 返回一个字符串,表示指定的数组及其元素 arr.toString()