由于我刚刚开始使用Javascript,我正在尝试解决一些问题并提高自己。我就遇到过这样的问题。我试图从问题中一步一步地做所有事情,但我不认为我的代码是有效的。有人可以帮我开发它吗?
问题:
请编写一个 JavaScript 函数,该函数接受两个参数:停车“日期和时间”(时间戳)并返回“日期和时间”(时间戳)。在机场停车,适用以下规则。
停车费;
前 20 分钟 2 欧元,
最多 40 分钟升至 4 欧元,
最多一小时升至 6 欧元,
最多两小时内升至 7 欧元,
涨至 9 欧元,持续长达三个小时,
涨至 11 欧元,持续时间长达 4 小时,
4-8 小时升至 13 欧元,
8-24 小时涨至 15 欧元。
前 24 小时 16 欧元,之后每天收费 9 欧元。
这是我的代码:
function msToHours(milisecond) {
let time = milisecond;
let hour = (time / 60000) / 60;
return hour;
}
//Mins to Hours Function
function minToHours(miniute){
let time = miniute;
let hr = (miniute /60);
return hr;
}
//Finding the nth day Function
function add24HR(hour, cb) {
let arr = new Array();
for (let i = 0; i < hour; i++) {
if (i % 24 == 0) {
arr.push(i)
}
}
return `Your Parking Fee is £${(arr.length*cb-cb) + 16}.(${arr.length} days)`
}
//Main Function
const parkingFees = (parkingDate, returnDate) => {
//Defining dates
var park = new Date(parkingDate)
var returned = new Date(returnDate);
//Variables
var penaltyFee = 9;
let totalPrice;
//Time between park and return (miliseconds)
let totalTime = returned - park
//MiliSeconds to Hour
let totalPark = msToHours(totalTime);
//Mins to Hours
if (totalPark <= minToHours(20)) {
return `Your parking fee is only £${2}.`
}
else if(totalPark > minToHours(20) && totalPark <= minToHours(40)){
return `Your parking fee is only £${4}.`
}
else if(totalPark > minToHours(40) && totalPark <= minToHours(60)){
return `Your parking fee is only £${6}.`
}
else if(totalPark > minToHours(60) && totalPark <= minToHours(120)){
return `Your parking fee is only £${7}.`
}
SMILET
相关分类