js常用数组处理方法

Array常用方法:

1、改变原数组
push():向数组末尾添加新的元素,并返回新组的长度;
pop():删除数组最后一个元素,并返回该元素;
unshift():数组开始添加一个或多个元素,返回新数组长度;
shift():删除数组第一个元素,并返回该元素;
sort():数组按字符编码排序,返回改变后的数组
reverse():颠倒数组;返回颠倒后的数组;
splice(index , howmany , item1,.....,itemX)数组更新:从index开始删除howmany项,item1...itemx,为新添加的项,j加在数组前面;改变原数组;返回删除项数组
2、不改变原数组
join(" "):数组转字符串,插入指定符号(默认是逗号),返回转化后的字符串,原数组不变;
 concat():合并数组,原数组不变,返回合并结果; 
 slice(star,end)截取数组:返回截取指定位置数组,包括开始不包括结束;end可以省略,表示到结束位置;负数表示倒数 
3、Es5新增
 (1)索引方法 
 indexOf(item,start):从satr开始查找,返回item在数组中的第一次位置;返回-1为没有该项 
 lastIndexOf(item):从末尾开始查找,返回item在数组中的第一次位置 
 (2)5个迭代方法 
 forEach():遍历数组,无返回值;array.forEach(function(currentValue , index , arr){//do something}, thisValue) 
 map():映射,返回新数组,原数组不变;map(function(currentValue , index , arr){//do something}, thisValue)   
 filter():过滤,返回过滤后的数组,原数组不变;filter(function(currentValue , index , arr){//do something}, thisValue)  
 every():匹配数组,全部符合返回TRUE,否则返回false;every(function(currentValue , index , arr){//do something}, thisValue)  
 some():与every相反,数组中有一个满足就返回true,否则返回false;用法同上 
 #####(3)2个归并方法 
 reduce():从数组的第一项开始,逐个遍历到最后;reduce(function(total , cur , index , arr){//do something}, initialValue) 
 reduceRight():从数组最后一项开始,到最前面;用法同上,total为初始值,total,cur为必写项 
4、Es6新增方法7个
 (1)from():类数组转数组;元数据不变,返回转换后的数组; 
 (2)of():将一组值转换为数组; 
 (3)find(function(currentvalue,index,arr){}):根据函数匹配元素,第一次返回true即停止执行下面项,如果都不符合返回undefind,空数组不执行,返回匹配项 
 (4)findIndex():遇上同,返回对应索引; 
 (5)fill(val,start,end):填充数组,val未填充值,start未开始,end为结束,均可为负值;改变原数组; 
 (6)includes(searchValue,fromIndex):查找数组是否含有指定值,有返回true,没有返回false 
 (7)copyWithin(target,start,end):从数组的指定位置拷贝元素到数组的另一个指定位置中,会覆盖原有成员 
 (8)遍历数组方法 keys()、values()、entries():这三个方法都是返回一个遍历器对象,可用for...of循环遍历,唯一区别:keys()是对键名的遍历、values()对键值的遍历、entries()是对键值对的遍历。 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。