【发布时间】:2020-04-08 09:11:53
【问题描述】:
在我的 JavaScript 游戏中,我将分数保存在多维数组中(在本地存储中)。
我正在保存一个themeID,它是已播放主题的标识符。此外,我正在保存游戏设置(pieces 和 shapesSquare)和游戏的duration。
我现在需要比较分数以找到每个设置的最佳分数(= 高分)。在这种情况下,最好的分数意味着最低的持续时间值(请随意忽略持续时间的格式,因为我知道如何比较时间戳,只需将其视为常规数字即可)。
对我来说,关键是只比较不同的设置,然后找到最低的持续时间值。我不仅需要整个数组的最低持续时间,还需要为每个设置找到它。这意味着我需要找出themeID、pieces 和shapesSquare 的相同点来比较分数。如果pieces 或shapesSquare 不同,那么这应该是这个themeID 的不同高分。
对我来说,完美的结果将是一个数组,其中我为每个主题设置了“最佳”分数。
数组看起来像:
let scores = [
{
"themeID": 1,
"pieces": 10,
"shapesSquare": true,
"duration": "00:01:00"
},
{
"themeID": 1,
"pieces": 10,
"shapesSquare": true,
"duration": "00:01:30"
},
{
"themeID": 4,
"pieces": 20,
"shapesSquare": false,
"duration": "00:04:00"
},
{
"themeID": 4,
"pieces": 30,
"shapesSquare": true,
"duration": "00:03:20"
}
]
顺便说一句,我对scores 数组非常灵活,因为我自己创建了它,所以如果您对更改结构有任何建议(以便更容易迭代),请随时告诉我。
提前感谢您的帮助!
【问题讨论】:
标签: javascript arrays multidimensional-array comparison