首页 > 解决方案 > 模棱两可的javascript输出

问题描述

这是下面的代码,用于将时间的小时和分钟转换为十进制数以计算每小时的收入。输入:小时 = 12;分钟 = 30 输出:120.50 但我希望输出为 12.50 我可以通过在输出中处理小数点来做到这一点,但这不会纠正我的逻辑。我猜不出发生了什么。请帮忙

var $hoursInput     = $('.js-hours-input');
var $minutesInput   = $('.js-minutes-input');
var $decimalOutput  = $('.js-converted-hours');
var $errorsOutput   = $('.js-errors');

function convert(){

  let hours = parseInt($hoursInput.val());
  let minutes = parseInt($minutesInput.val());
  let total;

    if (hours == NaN || hours > 23 || hours < 0){
        $errorsOutput.html('Hours must be an integer from 0 to 23!');
    }
    else if (minutes == NaN || minutes > 59 || minutes < 0){
        $errorsOutput.html('Minutes must be in range 0 to 59');
    }
    else{
    total = hours + (minutes/60).toFixed(2);
        $decimalOutput.html(total);
    }
}

$(document).ready(function() {
  
  var $button = $('.conversion-button');

  $button.on('click', convert);

});
  

标签: javascriptparameterscastingarguments

解决方案


推荐阅读