String.prototype.at()
The at()
method takes an integer value and returns a new String
consisting of the single UTF-16 code unit located at the specified offset. This method allows for positive and negative integers. Negative integers count back from the last string character.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
let character = string.at(index)
Parameters
index
- The index (position) of the string character to be returned. Supports relative indexing from the end of the string when passed a negative index; i.e. if a negative number is used, the character returned will be found by counting back from the end of the string.
Return value
A String
consisting of the single UTF-16 code unit located at the specified position. Returns undefined
if the given index can not be found.
Examples
Return the last character of a string
The following example provides a function which returns the last character found in a specified string.
// 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) );
// Logs: '1'
invoiceRef = 'myinvoice02';
console.log( returnLast(invoiceRef) );
// Logs: '2'
Comparing methods
Here we compare different ways to select the penultimate (last but one) character of a String
. Whilst all below methods are valid, it highlights the succinctness and readability of the at()
method.
const myString = 'Every green bus drives fast.';
// Using length property and charAt() method
const lengthWay = myString.charAt(myString.length-2);
console.log(lengthWay); // Logs: 't'
// Using slice() method
const sliceWay = myString.slice(-2, -1);
console.log(sliceWay); // Logs: 't'
// Using at() method
const atWay = myString.at(-2);
console.log(atWay); // Logs: 't'
Specifications
Specification |
---|
Relative Indexing Method The definition of 'Relative Indexing Method' in that specification. |
Browser compatibility
BCD tables only load in the browser