Javascript中的停车计算器

时间:2017-04-19 18:52:26

标签: javascript

你好我正在研究JS中的停车计算器我将包括给我提出问题的指示:

“停车费为每小时1美元,最多4小时进入。此后每天6美元。一天24小时。”

我的问题是我可以在24小时后进行计算,但我不能每24小时计算一次。就像你输入25-47一样,它仍然需要6美元,但在48小时它应该花费12美元等等。谢谢你的帮助。

到目前为止,这是我的代码:

<script type="text/javascript">
  function parkingFee() {           
    var parkingHours = parseFloat(prompt("Enter hours parked:"));

    if (parkingHours <= 4.0 && parkingHours > 0.5) {
      var fee = parkingHours * 1.0;
      document.write("Parking fee is $" + fee);
    }
    else if (parkingHours <= 0.5) {
      document.write("There are no parking fees.");
    }
    else if (parkingHours > 4.0 && parkingHours <= 24.0) {
      var fee2 = 6.0;
      document.write("Parking fee is $" + fee2);
    }
    else if (parkingHours > 24) {           
      var fee3 = parkingHours * 6.0 / 24;
      document.write("Parking fee is $" + fee3);
    }                       
  }
</script>

2 个答案:

答案 0 :(得分:0)

更改parkingHours > 24上的数学 parkingHours * 6.0 / 24parseInt(parkingHours / 24) * 6

当我正在玩你的代码时,我得到了你的结果:)

答案 1 :(得分:0)

您的功能已修改。使用Math.floor确定超过1的天数。

function parkingFee()
{

  var parkingHours = parseFloat(prompt("Enter hours parked:"));

  if (parkingHours <= 4.0 && parkingHours > 0.5) {
    var fee = parkingHours * 1.0;
    document.write("Parking fee is $" + fee);
  }
  else if (parkingHours <= 0.5) {
    document.write("There are no parking fees.");
  }
  else {
    var fee2 = 6.0;
    document.write("parking fee is $" + ((Math.floor(parkingHours / 24) || 1) * fee2));
  }       
}

parkingFee();