Last Updated : 23 Jul, 2025
Sorting a Set based on the values of its elements is a common need in JavaScript. While the built-in sort() function can't be directly applied to a Set, there's a workaround. Let's explore how we can achieve this:
Instead of directly sorting the Set, we'll:
By following these steps, we can effectively sort the Set according to the values of its elements.
Below are the approaches through which we can sort the set:
Approach 1: By iterating over the setIn this approach, we will iterate over the set manually and insert elements of the set into a new array that is about to get sorted according to our needs.
Syntax:# myset is the set under consideration for this article let myarr = []; for (let element of myset) { // Set elements pushed into the array myarr.push(element); } # myArray consists of the elements of the set myArray.sort()
Example: In this example, we are iterating over the set.
JavaScript
// Initialize a Set object
// using Set() constructor
let myset = new Set()
// Insert new elements in the
// set using add() method
myset.add(3);
myset.add(2);
myset.add(9);
myset.add(6);
// Print the values stored in set
console.log(myset);
// Create a new array to store set elements
let myarr = [];
for (let element of myset) {
// Set elements pushed into the array
myarr.push(element);
}
// Print the values stored in Array
console.log(myarr);
// Sort the array (default it will sort
// elements in ascending order)
myarr.sort()
// Clear the entire set using clear() method
myset.clear()
for (let element of myarr) {
// Array elements pushed into the set
myset.add(element);
}
// Print the values stored in set
console.log(myset);
Set(4) { 3, 2, 9, 6 } [ 3, 2, 9, 6 ] Set(4) { 2, 3, 6, 9 }Approach 2. Using Array.from() Method
One way of generating the array is to use the in-built Array.from() Method which will create an array out of the elements of the set. To know more about the method, follow this link.
Syntax:# myset is the set under consideration for this article myArray = Array.from(myset) myArray.sort()
Example: In this example, we are using Array.from() Method
JavaScript
// Initialize a Set object
// using Set() constructor
let myset = new Set()
// Insert new elements in the
// set using add() method
myset.add(3);
myset.add(2);
myset.add(9);
myset.add(6);
// Print the values stored in set
console.log(myset);
// Create a new array to store set elements
let myarr = [];
myArray = Array.from(myset)
myArray.sort()
console.log(myArray)
myset.clear()
myset = new Set(myArray);
console.log(myset)
Set(4) { 3, 2, 9, 6 } [ 2, 3, 6, 9 ] Set(4) { 2, 3, 6, 9 }Approach 3: Using Spread Operator and Sort Method
In this method, we will convert the set into an array using spread syntax, and then by using the sort function we sort the set.
Example: In this example, we are Using Spread Operator and Sort Method
JavaScript
// Initialize a Set object
// using Set() constructor
let myset = new Set()
// Insert new elements in the
// set using add() method
myset.add(3);
myset.add(2);
myset.add(9);
myset.add(6);
// Print the values stored in set
console.log(myset);
const sortedArray = [...myset].sort();
const newSet = new Set(sortedArray);
console.log(newSet);
Set(4) { 3, 2, 9, 6 } Set(4) { 2, 3, 6, 9 }
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4