Как объединить сортировки для массива?

Здравствуйте
Есть код fiddle
Подскажите, как объединить сортировку по числам и строкам?
По отдельность все работает
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
bingo347
@bingo347 Куратор тега JavaScript
Бородатый программер
function sortByExt(files) {
  return files.map(fileName => {
    const p = fileName.indexOf('.');
    const name = +fileName.slice(0, p);
    const ext = fileName.slice(p + 1);
    return [fileName, name, ext];
  }).sort(([, nameA, extA], [, nameB, extB]) => (extA < extB
    ? 1
    : (extA > extB ? -1 : nameA - nameB)
  )).map(([fileName]) => fileName);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы