= newResult.map((element, index) =>
`${index + 1}` + element.designation
).sort((a, b) => b - a)
вот так сортировка работает, а вот так НЕТ:
`${index + 1}` + '. ' + 'Сумма: ' + element.designation
Как обойти?
1. а какой массив получается в результате мапа? 2. почему бы полностью не использовать интерполяцию? `${index + 1}. Сумма: ${element.designation}`
[ '1. Сумма: 1000', '2. Сумма: 20000', '3. Сумма: 38000', '4. Сумма: 90000' ] 2. так тоже не работает
МДА естественно 2 вариант работать не будет..
sort((a, b) => parseInt(b) - parseInt(a)) как вариант. Но имхо лучше отсортировать массив по нужному тебе параметру, а потом уже замапить в нужный тебе вид
интересный вариант и рабочий) буду думать, как лучше переписать, спасибо)
new Intl.Collator('ru', { numeric: true })
ну типа сейчас ты сортируешь фактически по индексу. если тебе и правда нужно это, а не сорт например по сумме, то тогда вообще нет смысла сортировки и просто можешь написать reverse();
не факт что там по возрастанию, не факт
нет, сорт именно по сумме необходима
классная вещь, сенсей
но она не по сумме а по нумерации сравнивает
ну достать тогда сначала хд
в изначальной постановке нет речи о сортировке по сумме. как человек спросил, так ему и ответили =)
Обсуждают сегодня