Spec-Zone.ru › JavaScript

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'

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-string.prototype.at

Совместимость с браузерами

Десктоп Мобильные Сервер
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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API