String.prototype.at()
Базовая версия Широко доступна
Эта функция хорошо зарекомендовала себя и работает на множестве устройств и версий браузеров. Она доступна во всех браузерах с марта 2022 года.
Метод at() значений String принимает целое числовое значение и возвращает новую String, состоящую из одной кодовой единицы UTF-16, расположенной по указанному смещению. Этот метод допускает положительные и отрицательные целые числа. Отрицательные целые числа отсчитываются с конца строки.
Попробовать
const sentence = "The quick brown fox jumps over the lazy dog.";
let index = 5;
console.log(`An index of ${index} returns the character ${sentence.at(index)}`);
// Expected output: "An index of 5 returns the character u"
index = -4;
console.log(`An index of ${index} returns the character ${sentence.at(index)}`);
// Expected output: "An index of -4 returns the character d"
Синтаксис
at(index)
Параметры
-
index - Индекс (позиция) символа в строке, который должен быть возвращен. Поддерживает относительную индексацию с конца строки при передаче отрицательного индекса; то есть, если используется отрицательное число, возвращаемый символ будет найден путем отсчета с конца строки.
Возвращаемое значение
String, состоящая из одной кодовой единицы UTF-16, расположенной в указанной позиции. Возвращает undefined, если указанный индекс не найден.
Примеры
Возврат последнего символа строки
Следующий пример демонстрирует функцию, которая возвращает последний символ в указанной строке.
// A function which returns the last character of a given string
function returnLast(str) {
return str.at(-1);
}
let invoiceRef = "my-invoice01";
console.log(returnLast(invoiceRef)); // '1'
invoiceRef = "my-invoice02";
console.log(returnLast(invoiceRef)); // '2'
Сравнение методов
Здесь мы сравниваем различные способы выбора предпоследнего (last but one) символа String. Хотя все приведенные ниже методы действительны, этот пример подчеркивает краткость и читаемость метода at().
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'
Спецификации
Совместимость с браузерами
| Десктоп | Мобильные | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
at |
92 |
92 |
90 |
78 |
15.4 |
92 |
90 |
65 |
15.4 |
16.0 |
92 |
15.4 |
1.0.0 |
1.12 |
16.6.0 |
Смотрите также
- Полифил
String.prototype.atвcore-js - Полифил es-shims
String.prototype.at String.prototype.indexOf()String.prototype.lastIndexOf()String.prototype.charCodeAt()String.prototype.codePointAt()String.prototype.split()
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/at