Использование ColdFusion для сортировки многомерного массива на основе поля «Цена за кв. Фут» от высокого к низкому.
Он был в производстве и работал в тестировании, но возник случай, который дал странные, несортированные результаты. Я также запустил это на сайте CFDOCS, используя их ArraySort
код и получил те же, неправильные результаты сортировки.
Как видите, результаты даже не отсортированы.
Вот мой код:
figures = [
{name='carl',price='117.5'},
{name='fen',price='116.4'},
{name='joe',price='86.3'}
];
arraySort(figures, function (a, b){
return compare(b.price, a.price);
});
writeDump(figures);
Результаты:
NAME joe
PRICE 86.3
NAME carl
PRICE 117.5
NAME fen
PRICE 116.4
Должен быть отсортирован в следующем порядке: 117,5, 116,4, 86,3.
Я полагаю, что это сортировка таким образом, что 86.3
выглядит больше, чем остальные, потому что начинается с 8? Я также пробовал без кавычек и получил неправильные результаты.
Я запустил этот же код на cfdocs.org и получил те же неверные результаты.
Я что-то делаю неправильно в параметрах сортировки или в обратном вызове?
Спасибо!