Typcript - сортировка строк по убыванию Я пытаюсь сортировать string[] по убыванию. Пока что я сделал код ниже: let values = ["Saab", "Volvo", "BMW"]; // example values.sort(); values.reverse(); Он работает, но я пытаюсь выяснить, есть ли лучший способ сделать это. Ответ 1 Вам нужно создать функцию сравнения и передать ее как параметр функции сортировки: values.sort((one, two) => (one > two ? -1 : 1)); Ответ 2 Более актуальный ответ: вы можете использовать String.prototype.localCompare(), чтобы получить числовое значение для сравнения Простой пример: let values = ["Saab", "Volvo", "BMW"]; values.sort((a, b) => b.localeCompare(a)) Это также не вызывает предупреждений TypeScript, так как выводом localCompare является число Больше информации и дополнительных параметров функции можно увидеть здесь https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare Ответ 3 Используйте следующий код для сортировки массива в порядке возрастания и убывания. const ascending: any= values.sort((a,b) => (a > b ? 1 : -1)); const descending: any= values.sort((a,b) => (a > b ? -1 : 1))
Ответ 1 Вам нужно создать функцию сравнения и передать ее как параметр функции сортировки: values.sort((one, two) => (one > two ? -1 : 1));
Ответ 2 Более актуальный ответ: вы можете использовать String.prototype.localCompare(), чтобы получить числовое значение для сравнения Простой пример: let values = ["Saab", "Volvo", "BMW"]; values.sort((a, b) => b.localeCompare(a)) Это также не вызывает предупреждений TypeScript, так как выводом localCompare является число Больше информации и дополнительных параметров функции можно увидеть здесь https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare
Ответ 3 Используйте следующий код для сортировки массива в порядке возрастания и убывания. const ascending: any= values.sort((a,b) => (a > b ? 1 : -1)); const descending: any= values.sort((a,b) => (a > b ? -1 : 1))