我想知道是否有更好的方法基于百分比值创建我的stars
变量。
我只需要根据百分比值确定评分 1、1.5、2、2.5 等星级。
我用了一个 switch 语句完成了这个功能,但不知道是否有数学公式可以实现此功能?
感觉这种方式在编程上有点冗长?
var stars = 0;
switch (true) {
case score === 100:
stars = 5;
break;
case score >= 90:
stars = 4.5;
break;
case score >= 80:
stars = 4;
break;
case score >= 70:
stars = 3.5;
break;
case score >= 60:
stars = 3;
break;
case score >= 50:
stars = 2.5;
break;
case score >= 40:
stars = 2;
break;
case score >= 30:
stars = 1.5;
break;
case score >= 20:
stars = 1;
break;
case score >= 10:
stars = 0.5;
break;
case score >= 0:
stars = 0;
break;
}
我承认我的数学技能不是很好(我在数字方面有阅读障碍),所以如果我的问题冒犯了那些坚持自己尝试的人,我很抱歉,但这让我感到非常困扰!
非常感谢您提供的任何帮助!
case
,score * 0.05
看起来是合理的。 - David0.5
的倍数。我假设最后一个case score >= 100
是一个笔误,应该是case score >= 0
,否则它就没有任何意义。 - neelsg