Javascript 对数组进行排序,但每个键都是唯一的

问题描述 投票:0回答:2

对于国际象棋应用程序,我需要根据 javascript 中的值对该数组进行排序:

[e7e5: '-42', g8f6: '-16', h7h6: '-38', c8d7: '-29']

大致的内容:

Moves.sort((a,b)=>a.?? > b.??))

因此,让它工作的缺失部分是 ??.

在网上寻找解决方案,但找不到。

如有任何帮助,我们将不胜感激。

大卫

javascript arrays sorting key
2个回答
0
投票

movesArray.sort((a, b) => parseInt(b[1]) - parseInt(a[1])); 这将根据数值按降序对移动进行排序。


0
投票

使用

Object.values()
获取属性的值,无论其在对象中的名称如何:

const Moves = [{e7e5: '-42'}, {g8f6: '-16'}, {h7h6: '-38'}, {c8d7: '-29'}];

Moves.sort((a,b) => Object.values(a)[0] - Object.values(b));

console.log(Moves);

© www.soinside.com 2019 - 2024. All rights reserved.