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>

最善のアプローチは何ですか?入力を 3 つのセクションに分割し、そのように計算しますか? または、より簡単な解決策はありますか?最初の 2 文字を変数に、3 番目と 4 番目を var に、次に 5 番目と 6 番目を計算のために 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 に答える