javascript中数组常用的方法总结

javascript中数组常用的方法总结

Array.push()

  在数组的尾部添加一个元素
  例子:

		let arr = [1,2,3,4]
		arr.push(5)
		arr:[1,2,3,4,5]    //得到的结果

Array.unshift()

  在数组的头部添加一个元素
  例子:

		let arr = [1,2,3,4]
		arr.unshift(5)
		arr : [5,1,2,3,4]    //得到的结果

Array.pop()

  在数组的尾部删除一个元素
  例子:

		let arr = [1,2,3,4]
		arr.pop(5)
		arr : [1,2,3]     //得到的结果

Array.shift()

  在数组的头部删除一个元素
  例子:

		let arr = [1,2,3,4]
		arr.shift(5)
		arr : [2,3,4]      //得到的结果

Array.splice( 要操作元素的下标 , 删除的个数 , 添加的元素…)

  在数组的任意位置添加或删除元素
  例子1: 添加元素    在下标为1的元素位置添加8这个元素

		let arr = [1 ,2 ,3 , 4]
		arr.splice(1 ,0 , 8)
		arr : [1,8,2,3,4]    //得到的结果

  例子2: 删除元素    删除3这个元素

		let arr = [1 ,2 ,3 , 4]
		arr.splice(21)
		arr : [124]    //得到的结果

Array.join()

  把数组中的每个元素按照指定的符号拼接成一个字符串
  例子:

		let arr = ['y' , 'y' , 'd' , 's' ]
		arr.join('-')
		y-y-d-s      //得到的结果

Array.reverse()

  翻转数组
  例子:

		let arr = ['y' , 'y' , 'd' , 's' ]
		arr.reverse()
		[ 's' , ' d' , 'y' , ' y']     //得到的结果

Array.concat()

  合并多个数组
  例子:

		let ary = ['y' , 'y' , 'd' , 's' ]
		let  ary1 = ['m' , 'm' , 'd'] 
		arr.concat(ary)
		['y' , 'y' , 'd' , 's' , 'm' , 'm' , 'd']     //得到的结果

Array.some( 参数是回调函数 )

  遍历数组检测数组中是否存在满足条件的元素如果有返回true,如果没有返回false,
  特点:找到一个满足条件的就不找了

  例子: 数组中是否有大于30的元素

		let nums = [18 , 20 ,31 ,40 ]
		nums.some( item => {
		console.log('a')
			item>30
		}) 
		// 数组中显然有大于30的元素所以返回true,而在回调中打印的字母a会打印3次,

Array.every( 参数是一个回调函数 )

  遍历数组判断数组中每一个元素是否满足条件,只要遇到不满足条件的立马返回false
  如果全部满足返回true
  例子1:

		let nums = [12 , 18 ,23 , 31]
		nums.every(item=>{
			item>10
		})
		// 被判断的数组中的元素显然都满足条件,所以返回true

  例子2:

		let nums = [231241 , 31]
		nums.every(item=>{
			item>20
		})
		// 被判断的数组当遍历到第二个元素的时候就不满足条件了,立马返回false

Array.sort( 回调函数 )

  对数组中的元素按照指定的规则进行排序
  例子:

		let nums = [9 , 3 , 13 , 6 ]
		nums.sort( (a,b) => a - b)
		//前面的参数 - 后面的参数 表示 从小到大排序  
		nums.sort(( a, b ) => b - a)
		//后面的参数 - 前面的参数 表示 从大到小的排序

Array.forEach( 回调函数 )

   对数组进行遍历 回调中可以有俩个参数 item , index
  item 可以获取到每一个元素 index可以获取到每个元素对应的下标
  例子:

		let nums = [ 3 , 5 ,12 ,16]
		nums.forEach( (item , index) =>{
		console.log(item ,index)
		//返回的结果是数组中的每个元素和与之对应的下标
		})

Array.filter(回调函数)

  对数组进行遍历返回一个所有满足条件元素的新数组
  例子:

		let nums = [12 ,5 ,9 ,23 ,11]
		let  nums1=	nums.filter( item => item>10)
		console.log(nums1)
		//返回的值是  [12 ,23 ,11] 的一个新数组

Array.map(回调函数)

  回调中有三个参数,第一个参数原数组对应的每个元素,第二个参数原数组对应的每
  个元素的下标,第三个参数map 方法调用的数组
  例子:

		let  oldAry = [ 2, 4 , 5 ,3 ,7]
		let newAry = oldAry.map( (item , index , ary) =>{
			// 可以对原数组中每一个值进行操作  
			item * 2 
			//得到的是 [ 4 , 8 , 10 , 6 , 14]
		} )

Array.reduce(回调函数 ,初始值 )

初始值可有可无,根据有无初始值,回调函数执行的次数
有初始值,回调函数执行length次
无初始值,回调函数执行数组的length -1次

回调函数的参数
无初始值的时候:
第一个参数 第一次取数组的第一个元素
第二个参数 第一次取数组的第二个元素
第三个参数 第二个参数在数组中的下标

第一个参数的值从第二次开始
他的值来自于上一次回调函数的返回值
如果没有返回undefined

有初始值的时候:
第一个参数 第一次的值来自于给定的初始值
第二个参数 第一次取数组的第一个元素
第三个参数 第二个元素在数组中的下标

第一个参数的值从第二次开始
他的值来自于上一次回调函数的返回值
如果没有返回undefined

数字数组求和不用给初始值,数组中的值是对象求和就需要给初始值零

  例子:

		let ary = [1 ,5 , 8 ,11]
		ary.reduce((sum , item , index ) =>{
			sum +=item
			// 计算数组的和
		} ,  0)  //这里的0可有可无
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值