我注意到的第一件事是你應該使用if
/else if
因爲你真的只想抓住一個結構使它在視覺上更清晰相關的桶。
第二你是用出來做< >
排除一些數字或者是<=
或>=
,我的例子中,我選擇了做min < variable <= max
,但你可以很容易地最小的變量。
爲了清楚起見,我將其分離爲函數並將其應用於數字原型以便於使用。
// check if given number is greater than min less than or equal to max
Number.prototype.between = function(min, max) {
return (this > min && this <= max);
}
// calculates your mileage amounts
const calcRate = distance => {
if (distance.between(0, 10)) {
return (distance * 50);
} else if (distance.between(10, 40)) {
return (((distance - 10) * 1.5) + (10 * 50));
} else if (distance.between(40, 100)) {
return (((distance - 40) * 2) + (10 * 1.5) + (10 * 50));
} else if (distance.between(100, 1000)) {
return (((distance - 100) * 2.5) + (40 * 2) + (10 * 1.5) + (10 * 50));
} else if (distance > 1000) {
// do something
}
}
// test variable
let miles = 120;
// test result
let result = calcRate(miles);
// log result
console.log(result);
它應該做什麼? –
兩個地理點的票價計算。 – bugHunter
您可能想要將價格放入其他變量中。將變量用於不同的目的是一個糟糕的主意。 –