codewars.com самое то, сегодня как раз решал задачу надо было сортировать по числам в строках
let str = "is2 Thi1s T5est 3a";
делал на скоряк получился такой говнокод
function order(words) {
let arr2 = new Array(4);
if (words == "") return "";
let arr = words.split(" ");
for (let i = 0; i < arr.length; i++) {
for (let k = 0; k < arr[i].length; k++) {
if (!isNaN(arr[i][k])) {
arr2[arr[i][k]] = arr[i];
}
}
}
arr2.shift();
console.log(arr2.join(" "));
}
order(str);
потом глянул на профи
console.log( words.split(' ').sort((a, b) => a.match(/\d/) - b.match(/\d/)).join(' ') )
у меня вышло 290 символов, профи тоже самое решил всего за 90
вот так и тренируешься