React JS 按数量排序 > 和 < 两者 return 相同的结果

React JS Sort by quantity > and < both return the same result

这是我的代码:

const sortedDiscounts = discounts.sort((a, b) => a.quantity > b.quantity);
const amountSortedDiscounts = discounts
.map(el => el.quantity)
.concat(quantity + 0.5)
.sort((a, b) => a.quantity > b.quantity);
const amountSortedDiscounts2 = amountSortedDiscounts.sort(
(a, b) => a.quantity < b.quantity
);
const index = amountSortedDiscounts2.indexOf(quantity + 0.5) - 1;

amountSortedDiscounts 和 amountSortedDiscounts2 是相同的,即使 1 按 a.quantity > b.quantity 排序,后者按 a.quantity < b.quantity

排序

我做错了什么?

编辑:

这就是让我困惑的地方: 这两个 return 相同的顺序:

const sortedDiscounts = discounts.sort((a, b) => a.quantity > b.quantity);
const sortedDiscounts2 = discounts.sort((a, b) => a.quantity < b.quantity);

试图弄清楚为什么它们是一样的

如果您要处理数字,请改用 a.quantity - b.quantity

查看排序的工作原理: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

这是错误的比较。

ASC(升序):

const sortedDiscounts = discounts.sort((a, b) => a.quantity - b.quantity);

DESC(降序):

const sortedDiscounts = discounts.sort((a, b) => b.quantity - a.quantity);