所有内容来源于web前端开发微信公众号文章,记录为学习笔记2022-05-31知识点目录Array.ofArray.fromincludes使用at方法读取数组尾元素区别:constarray1-1=Array(3)//[,,]constarray1-2=Array.of(3)//[3]constarray2=Array()//[]constarray3=Array(undefined)//[undefined]constarray4=Array(1,2,3)//[1,2,3]constarray2=Array.of()//[]constarray3=Array.of(undefined)//[undefined]constarray4=Array.of(1,2,3)//[1,2,3]在Array.fromfrom方法中,可以使用Array.from方法将类数组对象、arguments对象、NodeList对象转化为实数数组。1)类数组元素constarrayLike={0:'fatfish',1:'medium',length:2}constarray1=[].slice.call(arrayLike)//['fatfish','medium']constarray2=Array.from(arrayLike)//['fatfish','medium']2)节点列表constdomsNodeList=document.querySelectorAll('div')constdomsArray=Array.from(domsNodeList)//[dom,dom,dom,...]3)ArgumentsconstlogInfo=function(){console.log('arguments',arguments)console.log('Array.fromarguments',Array.from(arguments))}logInfo('fatfish',100)logInfo('fatfish')4)Array.from的第二个参数可以使用Array.from方法,如"[].map"constarray=[1,2,3]constarray2=array.map((num)=>num*2)//[2,4,6]constarray3=Array.from(array,(num)=>num*2)//[2,4,6]includes//method1constnum=1if(num===1||num===2||num===3||num===4){console.log(num)//1}//方法2constnums=[1,2,3,4]constnum=1if(nums.includes(num)){console.log(num)//1}使用“at方法”读取数组的尾元素//方法1constarray=[1,2,3,4,5]constlastEle=array[array.length-1]//5constlastEle1=array[-1]//undefined//方法二constarray=[1,2,3,4,5]constlastEle=array.at(-1)//5constlastEle1=array.at(0)//1constlastEle2=array.at(-3)//3flatflat()方法创建一个新数组,其中所有子数组元素递归连接到指定深度constarray=[1,[2,[3,[4,[5]]]]]//无参数默认深度为1constflat1=array.flat()//[1,2,[3,[4,[5]]]]constflat2=array.flat(2)//[1,2,3,[4,[5]]]constflat3=array.flat(Infinity)//[1,2,3,4,5]findIndexfindIndex()方法返回满足指定的数组提供的测试函数第一个元素的索引,否则,她返回-1,表示没有元素通过测试constarray=[-1,0,10,10,20,100]constindex1=array.findIndex((num)=>num<0)//0constindex2=array.findIndex((num)=>num>=10)//2
