0

我希望从文本框中提取一个变量,该变量将像“201442”一样提交,将其转换为时间 20:14:42,然后为输出 20:14:37 减去 5 秒。到目前为止,我有:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>-5</title>
<script>
var incomingtime = "0";
</script>
<script>
    function calctime(){
		incomingtime = document.getElementById("inputtime").value;
		alert (incomingtime);
    }
</script>

</head>

<body>
<input type="text" id="inputtime"/><input type="text" id="outputtime"/><br>
<button onclick="calctime()">-5 Dat</button>
</body>
</html>

最好的方法是什么?将输入分成三个部分并以这种方式进行数学运算?还是有更简单的解决方案?我将如何将前两个字符放入变量中,第三个和第四个放入一个 var,然后将第五个和第六个放入一个 var 中进行计算?

4

1 回答 1

0

我想,您应该解析您的字符串并将您的时间放入 Date() 对象,然后对您的时间值进行任何计算会更容易您可以通过以下方式解析它:

timeObj = new Date(0,0,0,
  incomingtime.substring(0, 2),
  incomingtime.substring(2, 4),
  incomingtime.substring(4, 6));

然后你可以使用对象的'get'函数来执行你的值。如果要更改其值,只需添加或减去时间(以毫秒为单位)。例如,如果你想减去 5 秒,你应该:

timeObj -= 5*1000;
于 2016-12-23T19:41:28.350 回答