【JavaScript】数组Array中的常用方法大全,粗略 速查

数组方法

1.构建
let arr =[];
let arr = new Array(20);			//有20个空元素
let arr = new Array("ele1","ele2"); //2个元素
let arr = Array.from(map);			//类数组 -> 数组 (arguments伪数组,字符串,map,set等)
let arr = Array.of(1,2,3,4);		//一组参数 ->数组
2.检测
Array.isArray(value)     //确定一个值是不是数组
value instanceof Array   //只适用于一个页面
3.迭代
迭代器
a.keys()
a.values()
a.entries()键值对
a.forEach( (item,index,array) =>{ } );


//params:前一次函数的返回值,当前元素,和当前元素索引 和 array的本体
Array.reduce(function(prev,curr,index,array){...})
Array.reduceRight(function(prev,curr,index,array){...})//同理,从末尾往前迭代

请添加图片描述

4.复制和填充
a.fill(5);   	//用5填充整个数组
a.fill(6,3);	//用6填充 下标 3<=index
a.fill(6,1,5); 	//用6填充 下标 1<=index<5
a.copyWithin(5);	//从0<=index开始浅拷贝,插入到 5 	-> 0 1 2 3 4 0 1 2 3 4 5
a.copyWithin(5,1);	//从1<=index开始浅拷贝,插入到 5	-> 0 1 2 3 4 1 2 3 4 5 6
a.copyWithin(5,1,2);//从1<=index<2开始浅拷贝,插入到5	-> 0 1 2 3 4 1 5 6 7 8 9
5.转换
a.toString()
a.valueOf()
a.toLocaleString()
//常用:
let a = [0, 1, 2, 3, 4,5,6,7,8,9,10];
console.log( a.toString().replace(/,/g,'') )
//012345678910
6.栈

push返回最新长度 pop返回删除元素

a.push("a");		//["a"] 
a.push("a","b");	//["a","a","b"] 可以同时push两个 
console.log(a.pop()); //b 删掉了b
7.队列
a.unshift("a");		//["a"] 
a.unshift("a","b");	//["a","b","a"] 可以 前插 两个,还是按原ab顺序 
console.log(a.shift()); //a 删掉了a
8.排序
a.sort()
a.sort(compare)
a.reverse()
9.操作
concat

衔接无限个数组、元素,返回一个新构建的数组

let newArray = a.concat("a",["a","b"])  //创建一个 ["a","a","b"]
slice

slice(开始,结束) 返回 开始<=index<结束 的新数组

let newArray = a.slice(0)  //创建一个 0到末尾
let newArray = a.slice(0,1)  //创建一个 [0] 
splice

最强大的数组操作方法 一次实现 删除、插入、替换 三个功能的语法糖

功能参数语法糖用途
删除2 开始位置 删除数量a.splice(begin,num)删除begin<=index的num个元素
插入>=3 开始位置 0(删除数量) 元素a.splice(begin,0,ele…)在begin处 插入 元素
替换>=3 开始位置 num num个元素a.splice(begin,num,num个ele…)又删又插 就是替换
10.搜索方法
方法返回功能
a.includes(ele,begin)bool是否含有
a.indexOf(ele,begin)下标从起始查找第一个
a.lastIndexOf(ele,begin)下标从末尾查找第一个
a.find( (ele,index,array) => ele.age<18 )某个ele第一个匹配的元素
a.findIndex( (ele,index,array) => ele.age<18 )某个ele第一个匹配的元素的索引
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值