sort array

Sorting Arrays in JavaScript

Sorting is a fundamental operation in programming. In JavaScript, we can sort arrays using the built-in sort() method.

Syntax

The sort() method has the following syntax:

array.sort([compareFunction])

The compareFunction parameter is optional. It is a function that defines the sort order. If omitted, the array is sorted in ascending order by default.

Examples

Let's see some examples of sorting arrays in JavaScript.

Sorting an Array of Strings

Suppose we have an array of names:

const names = ["Alice", "Bob", "Charlie", "David"];

We can sort this array in ascending order as follows:

names.sort(); // ["Alice", "Bob", "Charlie", "David"]

The resulting array is sorted in alphabetical order.

Sorting an Array of Numbers

Suppose we have an array of numbers:

const numbers = [5, 2, 9, 1, 7];

We can sort this array in ascending order as follows:

numbers.sort((a, b) => a - b); // [1, 2, 5, 7, 9]

The compareFunction parameter is a function that takes two arguments a and b, which are two elements of the array being sorted. The function should return a negative, zero, or positive value, depending on the sort order of a and b. In this example, we subtract b from a, which sorts the array in ascending order.

We can also sort the array in descending order as follows:

numbers.sort((a, b) => b - a); // [9, 7, 5, 2, 1]

In this case, we subtract a from b, which sorts the array in descending order.

Sorting an Array of Objects

Suppose we have an array of objects:

const people = [
  { name: "Alice", age: 25 },
  { name: "Bob", age: 30 },
  { name: "Charlie", age: 20 }
];

We can sort this array by the age property in ascending order as follows:

people.sort((a, b) => a.age - b.age);

The resulting array is sorted by age as follows:

[
  { name: "Charlie", age: 20 },
  { name: "Alice", age: 25 },
  { name: "Bob", age: 30 }
]

We can sort the array by the name property in alphabetical order as follows:

people.sort((a, b) => a.name.localeCompare(b.name));

The resulting array is sorted by name as follows:

[
  { name: "Alice", age: 25 },
  { name: "Bob", age: 30 },
  { name: "Charlie", age: 20 }
]

Conclusion

Sorting arrays is an important skill in programming, and JavaScript provides a convenient sort() method for this purpose. By providing a compareFunction parameter, we can customize the sort order to suit our needs.

Subscribe to The Poor Coder | Algorithm Solutions

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
[email protected]
Subscribe