【发布时间】:2020-04-13 09:49:27
【问题描述】:
我正在尝试使用第二个数组数组的索引对一个键值对对象数组进行排序。
考虑以下代码:
const sheet = [['ES'], ['MES'], ['NQ'], ['MNQ']] // sort in this order
const quotes = [{root: 'MNQ'}, {root: 'MES'}, {root: 'ES'}, {root: 'NQ'}] // sort these objects
const sorted = quotes.sort((a, b) => {
return sheet.indexOf(a.root) - sheet.indexOf(b.root)
})
console.log(sorted)
当您运行上述代码时,sorted 保留了与原始 quotes 变量相同的顺序,并且看起来好像没有进行任何排序!
我觉得我快到了,我的代码只需要稍作调整即可使其正常工作。
【问题讨论】:
-
@CertainPerformance,你能解释一下编辑的原因,这样我就不会再犯同样的错误了吗?
-
见meta.stackexchange.com/q/2950 - 这不是一个大问题,但 Stack Overflow 是一个参考站点,而不是一个讨论论坛,所以“谢谢”等只是噪音(我们应该当我们看到它们时将它们从帖子中删除)
-
已注意到,从现在开始将不再那么“健谈”
标签: javascript arrays sorting object key-value