Функцию реализовал при помощи метода filter, если вводная цифра состоит из разных цифр, например 5678321 отрабатывает отлично, но если в вводной хоть одна цифра повторяется, например 643841 или 222 функция возвращает NaN. Как нужно дополнить/изменить функцию, чтобы она всегда возвращала число состоящее из вводной
function descendingOrder(n){
let numbers = Array.from(String(n), Number);
let result = 0;
let current = '';
let currentNumbers = numbers;
for (let i = 0; i < numbers.length; i++) {
current += Math.max.apply(null, currentNumbers);
currentNumbers = currentNumbers.filter(el => el !== Math.max.apply(null, currentNumbers));
result = +current;
}
return result;
}