Table of Contents
Arrays are a great data structure for storing a collection of items in a single variable.
Oftentimes, the array will not be in alphabetical order but you need it in that order.
In this post, we'll learn how to sort an array alphabetically in JavaScript.
How to sort an array alphabetically in JavaScript
Let's start with an array that is not in alphabetical order.
JAVASCRIPTconst array = ["c", "a", "b"];
console.log(array);
BASH[ "c", "a", "b" ]
To sort this array, we will use the built-in sort
method.
This method takes a callback function as an argument and sorts the array based on the return value of the callback function.
If the callback function returns a negative number, the first element will be sorted before the second element.
Let's use the localeCompare
method to sort the array.
JAVASCRIPTconst array = ["c", "a", "b"];
array.sort((a, b) => a.localeCompare(b));
console.log(array);
BASH[ "a", "b", "c" ]
This works so elegantly because the localeCompare
method returns a negative number if a
is before b
and a positive number if a
is after b
, which is exactly what the sort
method expects.
This also works if you are working with an array of objects:
JAVASCRIPTconst array = [
{ name: "c" },
{ name: "a" },
{ name: "b" }
];
array.sort((a, b) => a.name.localeCompare(b.name));
console.log(array);
BASH0: {name: 'a'}
1: {name: 'b'}
2: {name: 'c'}
Either way, you end up with an array in alphabetical order which you can use further in your program.
Conclusion
In this post, we learned how to sort an array alphabetically in JavaScript.
Simply use the sort
method on the element, either directly or on an element's property, to tell the method how to order the elements.
Thanks for reading and happy coding!
- How to Install Node on Windows, macOS and Linux
- Getting Started with Solid
- Git Tutorial: Learn how to use Version Control
- Best Visual Studio Code Extensions for 2022
- How to deploy a Deno app using Docker
- Getting Started with Deno
- How to deploy an Express app using Docker
- How to deploy a Node app using Docker
- Build a Real-Time Chat App with Node, Express, and Socket.io
- Creating a Twitter bot with Node.js
- Setting Up a Local Web Server using Node.js
- Using Axios to Pull Data from a REST API