String.charAt() vs String.at()

1.9k views Asked by At

What is the difference between the "String.charAt()" method and the "String.at()" method?

I tried to understand how they work, but other than the fact that the "at" method can have a negative value, I did not find any more.

2

There are 2 answers

0
Pavel Savva On

at() is a newer addition to JavaScript compared to charAt(). According to MDN, both charAt() and at() are valid, but at() is more "succinct and readable". The ability to use negative indexes makes your code more concise since you can do things like myString.at(-2) instead of myString.charAt(myString.length - 2).

charAt() has better support of older browser versions (1, 2), but I would give that absolutely no consideration, unless you have an extremely specific use case.

0
Shahadat Shemul On

at()

  • is newer (supported by all browsers only since March 2022)
  • works with any iterable object
  • accepts negative values as arguments

charAt()

  • is older and as such supported by older browser versions
  • only works with strings
  • doesn't accept negative values as arguments