JavaScript数组相关

什么是数组

数组时按照顺序存储一些无序列的元素,js数组中可以存放任何类型的数据。但是同意数组中写不同类型的数据,效率会比较低。

判断数组类型的方法汇总

方法一:Object.prototype.toString.call(arr);
方法二:arr.constructor===Array;
方式三:arr.isArray();   //ES6中

类数组转为数组的方式

方式一:arr = Array.prototype.concat.apply([],arguments);
方式二:arr = Array.prototype.slice.call(arguments);
方式三:arr = Array.from(arr1);      //ES6中

数组的方法汇总

concat

作用: 连接数组,不改变原数组,返回连接后的新数组。
使用:

方式一:arrA.concat(arrB)
	可以利用concat实现数组的复制:var arr4 = arr1.concat()//如果()内不填东西或者填一个[],都可以返回一个新数组;如果在参数中填入内容而非数组,就可以将这些内容添加在新数组的尾部

方式二:var arr2 = arr1.concat(arr3,arr4,arr5)//如果添加数组和元素混合,和上边相同
	var arr5 = arr1.concat({ })//连接对象时,相当于把对象当作新元素放入
	数组和类数组的连接:var arr=Array.prototype.concat.applay(arr1,arguments)

join

作用: 将数组中的元素通过符号,连接形成新的字符串
使用:

	 var str = arr.join("-")  //()什么也不填时,默认是,连接;()内如果是"" ,表示将每个字符紧密连接在一起

push

作用: 在数组尾部添加一个或者多个元素,并且返回该数组的新长度

()内如果添加的是数组,将会把数组当作元素添加进去

unshift

作用: 在数组的头部添加一个或者多个元素,并且返回该数组的新长度;效率低下

pop()

作用: 删除数组最尾部的元素,并返回被删除的元素

shiift()

作用: 删除数组最前面的一个元素,并且返回被删除的数组

splice(开始位置,删除多少个元素,添加什么元素)

作用: 给数组添加,删除,替换一个或多个元素,返回被删除的元素组成的新数组,会改变原数组
使用:

arr1=arr.splice()  //相当于创建一个空数组
arr1=arr.splice(0)  //相当于将数组的所有元素转移到另一个数组中
arr=arr.splice(-1)  //负数是指从后向前,-1表示仅删除最后一个并返回到新数组中
arr.splice(0,2)  //表示从数组的第0为开始,删除两位,并返回到新数组中
arr.splice(2,2,6,7)//从第二位开始,删除两位,返回到新数组中,并添加进6,7

slice(start,end)

作用: 截取,从开始位置到结束位置,返回街区后的新数组,不改变原数组,包括start不包括end
使用:

var arr1=arr.slice() //复制arr数组,到arr1中,没有引用关系
var arr1=arr.slice(0)//同上
var arr1=arr.slice(-1) //复制最后一个元素到新数组
var arr1=arr.slice(2,-1)//从下标为2到倒数最后一个之前复制

indexOf(要查中的内容,从第几个开始查找)

作用: 查找()内元素对应的下标,未找到返回-1;只返回第一个满足条件的值的下标,从前向后查找

lastIndexOf(要查中的内容,从第几个开始查找)

作用: 查找()内元素对应的下标,未找到返回-1;只返回第一个满足条件的值的下标,从后向前查找

reverse()

作用: 倒序,将数组倒序,返回原数组,改变原数组。

sort()

作用: 先将数组中的元素转换为字符串,然后将字符串的第一个字符取出转为Unicode编码,然后比较。当被比较的编码相同时,再转换下一个字符
使用:

arr.sort(function(a,b){
    return a-b;//a-b表示按照从小到大排序;b-a表示从打到小排序
})
//sort原理就是冒泡排序,a,b分别表示i和i+1

some()

作用: 判断数组中是否有满足条件的,如果有,返回true,并且不再遍历判断
使用:

arr.some(function(item,index,arr){ 

})

every()

作用: 判断数组总的元素是否都满足条件
使用:

arr.every(function(item,index,arr){ 

})

filter()

作用: 筛选,返回满足条件的元素,返回的是新数组
使用:

arr.filter(function()){}

reduce()

作用: 归并 求值
使用:

arr.reduce(function(value,item,index,arr){		

},initvalue) //回调函数中有四个参数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值