我有问题。我是Javascipt的初学者,有一个我无法解决的问题。 “空调器具有一个可测量室温的内置温度计。当用户在遥控器中输入所需温度时,它开始工作,但其风扇速度取决于实际温度与所需温度之间的差。如果相差大于10度,则风扇速度为3倍;如果大于5但小于或等于10,则风扇速度为2倍;在0至5度之间,风扇速度为1倍。模拟空调”就是这个问题。我在下面编写了代码,但我尝试输入的每个数字都会返回1x。你能帮我吗?
function airConditioner(aT, dT) {
var difference = function (aT , dT) {
return Math.abs(aT-dT);
}
if (difference > 10) {
return "3x";
}
else if (difference < 10) {
return "2x";
}
else if (5 < difference || difference < 10) {
return "2x";
}
else { 0 < difference || difference < 5
return "1x";
}
}
airConditioner(19, 15);
答案 0 :(得分:3)
调用差异函数后需要结果,或者仅是绝对增量的结果。
顺便说一句,您不需要其他任何部分,因为如果返回,则该函数已完成。
然后,您只需要检查更大的值,然后返回即可。以下检查假设值较小,因此无需再检查上限。
function airConditioner(aT, dT) {
var difference = Math.abs(aT - dT);
if (difference > 10) {
return "3x";
}
if (difference > 5) {
return "2x";
}
return "1x";
}
console.log(airConditioner(19, 15));