语法
at(index)
参数说明
index: 要返回的数组元素的索引。当index为负数时,从数组末端开始相对索引,返回的元素将从数组的末端开始倒数。
返回值
匹配给定索引的数组中的元素。没有匹配到的话,返回undefined
示例
基本用法
const arr = ['apple', 'pear', 'cherry']
arr.at(1) // 'pear'
arr.at(-2) // 'pear'
rr.at(-4) // undefined
比较 arr[index] arr.slice() arr.at()
获取数组倒数第二个元素的不同做法
const arr = ['apple', 'pear', 'cherry']
// 长度属性 arr[index]
arr[arr.length - 2] // 'pear'
// arr.slice()
arr.slice(-2, -1)[0] // 'pear'
// at()
arr.at(-2) // 'pear'
可以看出at()``简洁性和可读性
非数组对象 at() 用法
let obj = {
'length': 3,
0: 'apple',
1: 'pear',
2: 'cherry'
}
Array.prototype.at.call(obj, -2) // 'pear'
at()读取this的length并计算需要访问的索引。
tips: 关于JS从非数组对象转数组的一些方法,分别是Array.prototype.slice.call(obj)、Array.from(obj)、[…obj]和Object.values(obj)等方法的详细实现方法。