gpt4 book ai didi

javascript - 金、银、铜的逻辑

转载 作者:行者123 更新时间:2023-12-02 20:26:20 27 4
gpt4 key购买 nike

我正在用 JavaScript 构建游戏并生成结果。

var score = array("5", "5", "1");

因此玩家 1 的得分为 5,玩家 2 的得分为 5,玩家 3 的得分为 1。

我想将我的结果显示为 3 个级别 - 金级、银级和铜级,但是如果前两个结果相同,我希望它们都是金级,而最低分是银级。

使用 javascript 解决这个问题的最佳方法是什么?

理想情况下,这组特定分数的结果数组如下所示:

var results = array("gold", "gold", "silver");

谢谢。

最佳答案

这是一些执行此操作的代码:

var scores = [5, 8, 1];
scores.sort(function(a, b) {
return (a > b) ? 1 : ((a < b) ? -1 : 0);
}).reverse();
var medals = {};
var medalsUsed = 0;
var availableMedals = ['Gold', 'Silver', 'Bronze'];
for(var i = 0; i < scores.length; i++) {
var score = scores[i];
var medal;
if(medals[score]) { // already have a medal for this score value? use it
medal = medals[score];
}
else { // use next available medal
if(i >= 3) return; // but not if we've already given out 3 medals
medal = availableMedals.shift();
medals[score] = medal;
}

alert('medal for ' + i + ': ' + medal);
}

演示:http://jsfiddle.net/ASdb8/1/

关于javascript - 金、银、铜的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4794914/

27 4 0
文章推荐: javascript - Ajax 响应文本区域的换行符
文章推荐: javascript - jquery 脚本在 ie 中不起作用
文章推荐: javascript - Web 组合框控件的示例
文章推荐: javascript - 只允许在 contentEditable
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com