The String localeCompare() method
New Courses Coming Soon
Join the waiting lists
Find out all about the JavaScript localeCompare() method of a string
This method compares a string to another, returning a number (negative, 0, positive) that tells if the current string is lower, equal or greater than the string passed as argument, according to the locale.
The locale is determined by the current locale, or you can pass it as a second argument:
'a'.localeCompare('à') //-1
'a'.localeCompare('à', 'it-IT') //-1
The most common use case is for ordering arrays:
['a', 'b', 'c', 'd'].sort((a, b) => a.localeCompare(b))
where one would typically use
['a', 'b', 'c', 'd'].sort((a, b) => (a > b) ? 1 : -1)
with the difference that localeCompare()
allows us to make this compatible with alphabets used all over the globe.
An object passed as third argument can be used to pass additional options. Look for all the possible values of those options on MDN.
Here is how can I help you:
- COURSES where I teach everything I know
- CODING BOOTCAMP cohort course - next edition in 2025
- THE VALLEY OF CODE your web development manual
- BOOKS 17 coding ebooks you can download for free on JS Python C PHP and lots more
- Interesting links collection
- Follow me on X