How to sort an array of strings where each string represents a decimal number in JavaScript

1 Answer

0 votes
// Comparator function to sort strings as decimal numbers
function compareAsDecimal(a, b) {
    // Convert strings to numbers for comparison
    const numA = parseFloat(a);
    const numB = parseFloat(b);
    
    return numA - numB; 
}

// Input array of strings
const numbers = ["12.3", "5.6", "789.1", "3.14", "456.0", "0", "0.01", "4.0"];

// Sort the array using the custom comparator
numbers.sort(compareAsDecimal);

console.log("Sorted array of decimal strings:");
console.log(numbers.join("  "));



/*
run:

Sorted array of decimal strings:
0  0.01  3.14  4.0  5.6  12.3  456.0  789.1

*/

 



answered Sep 1, 2025 by avibootz
edited Sep 1, 2025 by avibootz
...