作为前端工程师,处理数据的能力一定很重要。对于普通的数组,有多少种方法可以得到其中的第N个元素?比如我们要获取数组array的第三个元素。constarray=[{id:1,name:'Mario'},{id:2,name:'Doom'},{id:3,name:'Jack'},{id:4,name:'Yvette'}]1。最简单的for循环当然是for/forEach循环。letresult;for(letindex=0;index{if(index===2){result=item;return;}});3.Array.prototype.findfind和forEach应该是常用的方法了。find返回数组中第一个满足条件的元素,这里也适合使用。constresult=array.find((item,index)=>index===2);4.Array.prototype.sliceslice对我来说,find和forEach的使用频率不高。最重要的是,每次用slice的时候,心里都会想着splice来确认,讨厌这种超级相似的词。slice返回一个数组,slice(start,end),如果没有传end,则从start返回到数组的末尾。constresult=array.slice(2,3)[0];如果start为负数,则从数组的末尾开始,例如获取数组的最后一个数:constlastOne=array.slice(-1)[0];获取数组的倒数第二个数:constlastSecond=array.slice(-2,-1)[0];如果有人像我一样,区分slice和splice就有点傻了。为了清楚起见,我是这样区分的:splice比slice多了p,splice会改变原来的数组。一般来说,修改原数组的方法不是我的首选,所以多出的p真的是P。这些东西真的很难背,哈哈哈哈,尤其记得我背“上北下南,左西左”的时候右东”,我对句子的前半部分从来没有问题,但无论什么时期,我总是读“左西右东”。”,或者说“左东右西”。后来自己总结了一下,封的应该是右的,未封的应该是未封的,未封的应该是闭的,“右”是封的,所以和“dong”,从那以后,我就再也没有高混过。5.Array.prototype.at是数组原型的新方法,个人认为这是最方便的方法,不像slice,它返回第N个元素.constresult=array.at(2);类似于slice,如果输入参数为负数,则从数组末尾开始,例如获取最后一个元素:constlastOne=array.at(-1);get倒数第二个元素:constlastSecond=array.at(-2);useituseituseit6.lodash的nth如果你在项目中使用lodash,那么nth当然也是不错的选择import{nth}from'lodash';constresult=nth(array,2);