JS数组常用方法

JS数组常用方法

  • toString

    • 返回一个字符串,表示指定的数组及其元素

    • 语法:arr.toString()
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.toString())//3,7,5,8,1,0,5
      </script>
      
  • join

    • 将一个数组或一个类数组对象的所有元素按自己的设定连接成一个字符串并返回这个字符串

    • 语法:arr.join([separator])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.join('-'))//3-7-5-8-1-0-5
      </script>
      
  • push

    • 将一个或多个元素添加到数组的末尾,并返回该数组的新长度。

    • 语法:arr.push(element1, ..., elementN)
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.push(0))//8
      	  console.log(arr)//[3, 7, 5, 8, 1, 0, 5, 0]
      </script>
      
  • pop

    • 从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。

    • 语法:arr.pop()
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.pop())//5
            console.log(arr)//[3, 7, 5, 8, 1, 0]
      </script>
      
  • unshift

    • 将一个或多个元素添加到数组的开头,并返回该数组的新长度(该方法修改原有数组)。

    • 语法:arr.unshift(element1, ..., elementN)
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.unshift(9))//8
            console.log(arr)//[9, 3, 7, 5, 8, 1, 0, 5]
      </script>
      
  • shift

    • 从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。

    • 语法:arr.shift()
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.shift())//3
            console.log(arr)//[7, 5, 8, 1, 0, 5]
      </script>
      
  • reverse

    • 将数组中元素的位置颠倒,并返回该数组。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。该方法会改变原数组。

    • 语法:arr.reverse()
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.reverse())//[5, 0, 1, 8, 5, 7, 3]
      </script>
      
  • sort

    • 用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串

    • 语法:arr.sort([compareFunction])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
      	  //升序
            console.log(arr.sort((a, b) => a - b))//[0, 1, 3, 5, 5, 7, 8]
            //降序
            console.log(arr.sort((a, b) => b - a))//[8, 7, 5, 5, 3, 1, 0]
      </script>
      
  • concat

    • 用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。

    • 语法:var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            const arr1 = [1, 2, 3]
            console.log(arr.concat(arr1))//[3, 7, 5, 8, 1, 0, 5, 1, 2, 3]
            console.log(arr)//[3, 7, 5, 8, 1, 0, 5]
      </script>
      
  • slice

    • 返回一个新的数组对象,这一对象是一个由 beginend 决定的原数组的浅拷贝(包括 begin,不包括end)。原始数组不会被改变。

    • 语法:arr.slice([begin[, end]])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.slice(2))//[5, 8, 1, 0, 5]
            console.log(arr.slice(2, 4))//[5, 8]
            console.log(arr.slice(1, 5))//[7, 5, 8, 1]
      </script>
      
  • splice

    • 通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。

    • 语法:array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            //插入
            console.log(arr.splice(1, 0, '插入'))//[]
            console.log(arr)//[3, "插入", 7, 5, 8, 1, 0, 5]
      	  //删除
            console.log(arr.splice(3, 2))//[5, 8]
            console.log(arr)//[3, "插入", 7, 1, 0, 5]
      	  //替换
            console.log(arr.splice(5, 1, '替换'))//[]
            console.log(arr)//[3, "插入", 7, 1, 0, "替换"]
      </script>
      
  • indexOf

    • 返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。

    • 语法:arr.indexOf(searchElement[, fromIndex])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.indexOf(5))//2
      </script>
      
  • lastIndexOf

    • 返回指定元素(也即有效的 JavaScript 值或变量)在数组中的最后一个的索引,如果不存在则返回 -1。从数组的后面向前查找,从 fromIndex 处开始。

    • 语法:arr.lastIndexOf(searchElement[, fromIndex])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.lastIndexOf(5))//6
      </script>
      
  • filter

    • 创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。

    • 语法:var newArray = arr.filter(callback(element[, index[, array]])[, thisArg])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.filter((item) => item > 2))//[3, 7, 5, 8, 5]
      </script>
      
  • map

    • 创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。

    • 语法:var new_array = arr.map(function callback(currentValue[, index[, array]]) {
       		// Return element for new_array 
      	 }[, thisArg])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            console.log(arr.map((item) => item * 2))//[6, 14, 10, 16, 2, 0, 10]
      </script>
      
  • forEach

    • 对数组的每个元素执行一次给定的函数。

    • 语法:arr.forEach(callback(currentValue [, index [, array]])[, thisArg])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            arr.forEach(item => {
              console.log(item)//3   7   5   8   1   0   5
            })
      </script>
      
  • reduce

    • 对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。

    • 语法:arr.reduce(callback(accumulator, currentValue[, index[, array]])[, initialValue])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            const reducer = (accumulator, currentValue) => accumulator + currentValue
            console.log(arr.reduce(reducer))
      </script>
      
  • some

    • 测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。

    • 语法:arr.some(callback(element[, index[, array]])[, thisArg])
      
    • <script>
            const arr = [3, 7, 5, 8, 1, 0, 5]
            const even = (item) => item % 2 === 0
            console.log(arr.some(even))
      </script>
      
  • Array.isArray()

    • 用于确定传递的值是否是一个Array

    • Array.isArray([1,2,3])
      
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JS数组常用方法有很多,以下是其中的一些常用方法: 1. Array.push():向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。 2. Array.pop():删除数组的最后一个元素,并返回删除的元素。原数组改变。 3. Array.shift():删除数组的第一个元素,并返回删除的元素。原数组改变。 4. Array.unshift():向数组的开头添加一个或多个元素,并返回新的数组长度。原数组改变。 5. Array.reverse():反转数组的顺序。原数组改变。 6. Array.sort():对数组进行排序。原数组改变。 7. Array.splice():从数组中删除元素,并可以在指定位置插入新的元素。原数组改变。 8. Array.concat():合并两个或多个数组,生成一个新的数组。原数组不变。 9. Array.join():将数组的所有元素连接成一个字符串。原数组不变。 10. Array.indexOf():返回指定元素在数组中的索引,如果不存在则返回-1。 11. Array.slice():从指定位置截取数组的片段并返回新的数组。原数组不变。 12. Array.forEach():对数组的每个元素执行指定的操作。 13. Array.map():对数组的每个元素执行指定的操作,并返回一个新的数组。 14. Array.filter():根据指定的条件过滤数组的元素,并返回一个新的数组。 15. Array.every():检测数组的所有元素是否都满足指定的条件。 16. Array.some():检测数组的是否存在满足指定条件的元素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值