JSFiddle - React, Tailwind, and code Playground

HTML

<ul id="results" />

CSS

body {
    margin:10px;
}
.pass {
    color:green;
}
.fail {
    color:red;
    text-decoration:line-through;
}

JavaScript

/**
Write a function that given a list of non negative integers, arranges them such that they form the largest possible number. For example, given [50, 2, 1, 9], the largest formed number is 95021.
*/
function assert(expected, actual, desc) {
    var res = $("#results");
    var li = document.createElement("li");
    li.className = expected == actual ? "pass" : "fail";
    li.appendChild(document.createTextNode(desc));
    res.append(li);
}

function comparator (eltA, eltB) {
    var isBigger = ("" + eltA + eltB) > ("" + eltB + eltA);
    return isBigger ? -1 : 1;
};

var findLargestNumber = function (array) {
    var sorted = array.sort(comparator);
    return parseInt(sorted.join(""), 10);
};

assert(585845, findLargestNumber([5, 58, 584]), "[5, 58, 584]");
assert(5858584, findLargestNumber([58, 584, 58]), "[58, 584, 58]");
assert(58554, findLargestNumber([55, 58, 4]), "[55, 58, 4]");
assert(21000, findLargestNumber([0, 0, 0, 1, 2]), "[0, 0, 0, 1, 2]");
assert(1, findLargestNumber([1]), "[1]");
assert(111, findLargestNumber([1, 1, 1]), "[1,1,1]");