как я могу отсортировать в алфавитном порядке массив записей, в которых запись имеет поле name: string? - PullRequest
2 голосов
/ 13 июля 2020
let items = [| {name: "b"}, {name: "c"}, {name: "a"}|];

// ожидаемый результат

[| {name: "a"}, {name: "b"}, {name: "c"}|];

Подумывал об использовании Belt.SortArray.stableSortBy, но требует int.

1 Ответ

3 голосов
/ 13 июля 2020

String.compare возвращает int, поэтому вы можете просто использовать это:

let items = [| {name: "b"}, {name: "c"}, {name: "a"}|];

let sorted = Belt.SortArray.stableSortBy(items, (a, b) => String.compare(a.name, b.name));
...