我有一个计算器,根据水温,所需温度,水量,施加的能量和热损失计算加热水所需的时间。输出是几秒钟。我还有一个用户可以输入时间的字段。我怎样才能节省时间并从中减去秒数?
JavaScript的:
function calculate() {
var liters = document.getElementById("liters").value;
var currentTemp = document.getElementById("currentTemp").value;
var desiredTemp = document.getElementById("desiredTemp").value;
var elementWattage = document.getElementById("elementWattage").value;
var thermalLoss = document.getElementById("thermalLoss").value;
var mashInTime = document.getElementById("mashInTime").value;
var secondsToHeat = ((4186 * liters ((desiredTemp - currentTemp) * thermalLoss) / elementWattage);
}
HTML:
<p><label for="liters">Liters:</label>
<input id="liters" onkeyup="calculate()" value="22">
<p><label for="currentTemp">Water Temperature °C:</label>
<input id="currentTemp" onkeyup="calculate()" value="15">
<p><label for="desiredTemp">Desired Temperature °C:</label>
<input id="desiredTemp" onkeyup="calculate()" value="77">
<p><label for="elementWattage">Watts of Heating Element:</label>
<input id="elementWattage" onkeyup="calculate()" value="1000">
<p><label for="thermalLoss">Thermal Loss (1.05 insulated, 1.1+ uninsulated):</label>
<input id="thermalLoss" onkeyup="calculate()" value="1.11">
<p><label for="mashInTime">Mash In Time:</label>
<input id="mashInTime" onkeyup="calculate()" value="">
我需要解析输入的时间吗?或者我需要将秒转换为小时/分钟然后减去?
谢谢!
答案 0 :(得分:1)
您正在使用jQuery来简化表单验证。一旦你得到时间,我会把它转换为秒,这样减法是相当简单的。
一旦您有几秒钟的开始时间,使用Moment.js可以轻松将其转换回您想要显示的格式。该链接是一个处理时间格式的Stack Overflow问题。