String.prototype.at()

at() 方法是 String 值的一个方法,它接受一个整数值并返回一个新的 String,该字符串包含位于指定偏移量的单个 UTF-16 代码单元。此方法允许使用正整数和负整数。负整数从最后一个字符串字符开始倒数。

试一试

语法

js
at(index)

参数

索引

要返回的字符串字符的索引(位置)。支持从字符串末尾开始的相对索引,即如果使用负数,则返回的字符将通过从字符串末尾开始倒数来找到。

返回值

一个 String,包含位于指定位置的单个 UTF-16 代码单元。如果给定的索引找不到,则返回 undefined

示例

返回字符串的最后一个字符

以下示例提供了一个函数,该函数返回指定字符串中找到的最后一个字符。

js
// A function which returns the last character of a given string
function returnLast(arr) {
  return arr.at(-1);
}

let invoiceRef = "myinvoice01";

console.log(returnLast(invoiceRef)); // '1'

invoiceRef = "myinvoice02";

console.log(returnLast(invoiceRef)); // '2'

比较方法

在这里,我们比较了选择 String 的倒数第二个(倒数第二个)字符的不同方法。虽然以下所有方法都是有效的,但它突出了 at() 方法的简洁性和可读性。

js
const myString = "Every green bus drives fast.";

// Using length property and charAt() method
const lengthWay = myString.charAt(myString.length - 2);
console.log(lengthWay); // 't'

// Using slice() method
const sliceWay = myString.slice(-2, -1);
console.log(sliceWay); // 't'

// Using at() method
const atWay = myString.at(-2);
console.log(atWay); // 't'

规范

规范
ECMAScript 语言规范
# sec-string.prototype.at

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅