使用闭包函数计算打车价格,出租车起步价11元(3公里内),之后每增加一公里增加2.2元,如果夜间(2 3:00~5:00),总价格为原 A >时间线 来的1.3倍。计算并且输出正常6公里的费用以及6公里夜间的费用。 5 ×00四0 > 3 程序运行后,6公里正常的费用
时间: 2024-11-04 17:13:57 浏览: 34
在JavaScript中,我们可以使用闭包函数来计算打车价格。首先,我们创建一个函数,它接受两个参数,行驶距离和是否是夜间。这个函数内部又定义了一个匿名函数,用于计算超出起步价后的费用。然后,根据夜间标志计算最终的总价。
```javascript
function calculateFare(distance, isNight) {
const baseFee = 11;
const extraFeePerKm = 2.2;
// 匿名函数计算超出起步价的部分
function fareCalculator(extraDistance) {
return extraDistance * extraFeePerKm;
}
let totalFare = baseFee;
if (extraDistance := distance - 3 > 0) {
totalFare += fareCalculator(extraDistance);
}
// 夜间费用的计算
const nightMultiplier = isNight ? 1.3 : 1;
const totalFareNight = totalFare * nightMultiplier;
return { normalFare: totalFare, nightFare: totalFareNight };
}
// 计算正常白天6公里的费用
const dayFare = calculateFare(6, false);
console.log("正常白天6公里的费用:", dayFare.normalFare);
// 计算正常夜间6公里的费用
const nightFare = calculateFare(6, true);
console.log("正常夜间6公里的费用:", nightFare.nightFare);
```
执行上述代码后,将输出6公里白天和晚上的费用。
阅读全文