0


在 javascript 中快速获取数组指定位置的元素

前言

在 JavaScript 中如果我们需要获取一个数组指定位置的元素,通常情况下,我们一般采用以下方法:

1.通过下标直接获取指定元素:arr[index], index 为非负数。

let arr =[1,4,5,8,10]// 获取数组的第一个元素let num1 = arr[0]// 获取数组的最后一个元素let num2 = arr[arr.length -1]// 获取数组的倒数第二个元素let num3 = arr[arr.length -2]
console.log(num1, num2, num3);// 1 10 8

根据正序位置获取指定的元素比较方便,但是根据逆序位置(倒数第几个)获取指定的元素稍微繁琐(需要计算出正序位置)。
正序时 index 为正整数或0,逆序时 index 为负整数。

那么获取对应位置元素的表达式可以表示为:

index 为正数或0:arr[index]

index 为负数: arr[arr.length + index]

2.通过 slice 方法获取

let arr =[2,4,6,8,10]// 获取数组的第一个元素let num4 = arr.slice(0,1)// 获取数组的最后一个元素let num5 = arr.slice(-1)// 获取数组的倒数第二个元素let num6 = arr.slice(-2,-1)
console.log(num4[0], num5[0], num6[0]);// 2 10 8

其实在其他语言中比如 python 如果你想要获取倒数第几个元素是可以通过 arr[index] 直接获取(如arr[-1]获取倒数第一个元素), 但是在 JavaScript 中是不支持这样获取的。

为了更方便获取数组指定位置的元素(无论时正序还是逆序位置),数组提供了一个内置方法 at() 可以通过元素下标直接获取指定位置的数组元素

数组的 at() 方法

我们使用 at 方法实现以上案例:

let arr2 =[2,4,6,8,10]// 获取数组的第一个元素let num4 = arr2.at(0)// 获取数组的最后一个元素let num5 = arr2.at(-1)// 获取数组的倒数第二个元素let num6 = arr2.at(-2)
console.log(num4, num5, num6);// 2 10 8

语法:at(index), index 是整数,其中包括负整数表示从左往右数第几个元素。

获取指定位置不存在的元素返回 undefined

let arr =[2,4,6,8,10]
console.log(arr[5]);// undefined

获取类数组指定位置元素

let likeArr ={length:2,0:'vue',1:'react'}let lang =Array.prototype.at.call(likeArr,0)
console.log(lang);// vue

对比

方法参数范围简易程度arr[index]非负整数逆序获取元素时需要进行计算,相对繁琐slice(startIndex, endIndex)整数一般需要一到两个下标,相对繁琐at(index)整数只需一个下标 index ,相对简单

标签: javascript 前端

本文转载自: https://blog.csdn.net/weixin_46828094/article/details/129159211
版权归原作者 zjl_712、 所有, 如有侵权,请联系我们删除。

“在 javascript 中快速获取数组指定位置的元素”的评论:

还没有评论