JS数组常用方法

  • push(): 将一个或多个元素添加到数组的末尾并返回数组的新长度

    const arr = ['a', 'b', 'c', 'd']
    const count = arr.push('e')
    console.log(count) // 5
    console.log(arr) // Array ["a", "b", "c", "d", "e"]
    复制代码
  • pop(): 从数组中删除最后一个元素并返回该元素  

    const arr = ['a', 'b', 'c', 'd']
    const item = arr.pop()
    console.log(item) // "d"
    console.log(arr) // Array ["a", "b", "c"]
    复制代码
  • shift(): 移除数组的第一个元素并返回移除的元素

    const arr = ['a', 'b', 'c', 'd']
    const item = arr.shift()
    console.log(item) // "a"
    console.log(arr) // Array ["b", "c", "d"]
    复制代码
  • unshift(): 将一个或多个元素添加到数组的开头并返回数组的新长度

    const arr = ['a', 'b', 'c', 'd']
    const item = arr.unshift('e')
    console.log(item) // 5
    console.log(arr) // Array ["e", "a", "b", "c", "d"]
    复制代码
  • splice(): 通过删除或替换现有元素和/或在适当位置添加新元素来更改数组的内容

    splice(start)
    splice(start, deleteCount)
    splice(start, deleteCount, item1)
    splice(start, deleteCount, item1, item2, itemN)
    
    
    const arr = ['a', 'b', 'c', 'd']
    const result = arr.splice(1, 2, 'e', 'f','g')
    console.log(result) // Array ["b", "c"]
    console.log(arr) // Array ["a", "e", "f", "g", "d"]
    复制代码
  • slice(): 将数组的一部分的从start到end(不包括end)浅拷贝返回到新数组对象中

    slice()
    slice(start)
    slice(start, end)
    
    
    const arr = ['a', 'b', 'c', 'd', 'e']
    const result = arr.slice(1, 3)
    console.log(result) // ['b', 'c']
    console.log(arr) // ['a', 'b', 'c', 'd', 'e']
    复制代码
  • sort():  原地对数组元素进行排序并返回排序后的数组

    // Functionless
    sort()
    // Arrow function
    sort((firstEl, secondEl) => { ... } )
    // Compare function
    sort(compareFn)
    
    
    const arr = [ 4, 1, 6, 3]
    arr.sort()
    console.log(arr) // Array  [1, 3, 4, 6]
    
    const arr2 = ['a', 'c', 'e', 'd']
    arr2.sort()
    console.log(arr2) // Array ["a", "c", "d", "e"]
    复制代码
  • reverse(): 原地反转数组

    const arr = ['a', 'b', 'c', 'd', 'e']
    arr.reverse()
    console.log(arr) // Array ["e", "d", "c", "b", "a"]
    复制代码
  • map():  创建一个新数组,这个数组中的元素是对 调用数组中的每个元素调用提供的函数的结果

    const arr = [1, 2, 3, 4]
    const result = arr.map(item => item * 2)
    console.log(arr)  // Array [2, 4, 6, 8]
    复制代码
  • forEach(): 为每个数组元素执行一次提供的函数

    const arr = [1, 2, 3, 4]
    let result = []
    arr.forEach(item => { result.push(item * 2) })
    console.log(result) // Array [2, 4, 6, 8]
    复制代码
  • concat(): 合并两个或多个数组。 此方法不会更改现有数组,而是返回一个新数组。

    const arr1 = ['a', 'b', 'c']
    const arr2 = ['d', 'e', 'f']
    const arr3 = array1.concat(array2)
    console.log(arr3) // Array ["a", "b", "c", "d", "e", "f"]
    复制代码
  • entries():  返回一个新的 Array Iterator 对象,该对象包含数组中每个索引的键/值对。

    const arr = ['a', 'b', 'c', 'd']
    for (const [index, item] of arr.entries())
        console.log(index, item)
    /*
    0 "a"
    1 "b"
    2 "c"
    3 "d"
    */
    复制代码
  • every(): 测试数组中的所有元素是否通过提供的函数实现的测试。 它返回一个布尔值。

    const arr = [1, 4, 6, 7, 13, 15, 19]
    const result = arr.every(item => item <=20)
    console.log(result) // true
    复制代码
  • some(): 测试数组中是否至少有一个元素通过了提供的函数实现的测试。

    const arr = [1, 4, 6, 7, 13, 15, 19]
    const result = arr.some(item => item <=3)
    console.log(result) // true
    复制代码
  • filter():创建一个新数组,其中包含通过提供的函数实现的测试的所有元素。

    const arr = [1, 4, 6, 7, 13, 15, 19]
    const result = arr.filter(item => item < 13)
    console.log(result) // Array [1, 4, 6, 7]
    复制代码
  • find(): 返回提供的数组中满足提供的测试函数的第一个元素的值。 如果没有值满足测试函数,则返回 undefined

    const arr = [1, 4, 6, 13, 13, 15, 19]
    const result = arr.find(item => item > 14)
    console.log(result) // 15
    复制代码
  • includes(): 确定数组是否包含某个值

    const arr = [1, 4, 6, 13, 13, 15, 19]
    const result = arr.includes(15)
    console.log(result) // true
    复制代码
  • indexOf():返回可以在数组中找到给定元素的第一个索引,如果不存在,则返回 -1

    const arr = [1, 4, 6, 13, 13, 15, 19]
    const result = arr.indexOf(13)
    console.log(result) // 3
    复制代码
  • join(): 通过连接数组(或类似数组的对象)中的所有元素来创建并返回一个新字符串,以逗号或指定的分隔符字符串分隔

    const arr = ['a', 'b', 'c', 'd']
    const result = arr.join('-')
    console.log(result) // 'a-b-c-d'
    复制代码
  • reduce():在数组的每个元素上执行一个 reducer 函数(您提供的),从而产生单个输出值

    const arr = [1, 2, 3, 4]
    const result = arr.reduce((accumulator, currentValue) => accumulator + currentValue)
    console.log(result) // 10
    复制代码
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享