摘要:在本教程中,您将学习如何使用 JavaScript 数组 at()
方法根据索引返回元素。
JavaScript 数组 at() 方法简介
在 JavaScript 中,您可以使用方括号 []
访问 数组 的元素。例如,arr[0]
返回数组 arr
中的第一个元素,arr[1]
返回第二个元素,以此类推。
要获取数组中的最后一个元素,可以使用 length
属性,如下所示
arr[length-1]
Code language: CSS (css)
JavaScript 不允许您使用负索引来访问最后一个元素,就像其他语言(例如 Python)那样。例如,以下代码返回 undefined
arr[-1]
Code language: CSS (css)
原因是 JavaScript 也使用方括号 []
来访问 对象 的属性。
例如,obj[1]
返回具有键 "1"
的对象 obj
的属性。因此,obj[-1]
返回具有键 "-1"
的对象的属性。
在上面的示例中,arr[-1]
返回具有键 "-1"
的 arr
对象的属性。请注意,数组的类型为 object
。由于 arr
对象中不存在 "-1"
属性,因此它返回 undefined
。
出于这个原因,ES2022 引入了新的方法 at()
,它被添加到 Array
、String
和 TypeArray
的 prototype
中。本教程重点介绍 Array.prototype
的 at()
方法。
at()
方法接受一个索引并返回该索引处的元素。以下是 at()
方法的语法
arr.at(index)
Code language: CSS (css)
在此语法中,index
指定要返回的数组元素。它可以是零、正数或负数。
如果索引为零或正数,则 at()
方法的工作方式类似于 []
。
但是,如果使用负索引,该方法将返回数组末尾的元素。例如,arr.at(-1)
返回最后一个元素,arr.at(-2)
返回倒数第二个元素,依此类推。
JavaScript 数组 at() 方法示例
以下示例演示了如何使用 at()
方法返回数组元素
const scores = [5, 6, 7];
console.log(scores.at(1)); // same as scores[1]
// get the last element
console.log(scores.at(-1)); // 7
console.log(scores.at(-1) === scores[scores.length - 1]); // true
Code language: JavaScript (javascript)
输出
6
7
true
Code language: JavaScript (javascript)
摘要
- 使用
at()
方法根据索引返回数组的元素。 - 带负索引的
at()
方法将返回数组末尾的元素。