JavaScript~ストップウォッチver2~

早くパソコンが来ないかなーと思い続けています。

以前と比べてだいぶコードがすっきりしましたが、先生曰く、自分のコードは、信憑性に乏しいと教えていただいたのですが... 

正直、(。´・ω・)?

ただ、詳しく解説していただいてなるほど!!ということになりました。

まずは、コードです!

コンソールがなぜか動かぬ...

動かないのは、いったん放っておいて←ダメw

まずは、クリックしてから、1秒後にきっかり1と表示してほしいこれが前提です。

自分のコードは、
1、クリックされてから、その時点の時間を取得していること
2、その後、count関数を呼び出し、時間を取得していること()
3、さらにそこから、setTimeout関数を使って、1秒ごとにcount関数を呼び出していること。
4、1,2の間にはブラウザのJS処理速度に依存すること
5、さらにその後に処理が続けばずれが大きくなること
6、new Date()は、インスタンス化されたときの時刻であること
etc…

自分の書いたコードにこれだけ時間がずれる原因があるとは思っていなかった。

とりあえず、今後いろいろ試してみようと思います。

setIntetvalを使ったり、Date.now()を使ってみたり、クリックした時にはカウントを初めて1秒後に1と表示されるようにしたいです。

今日は以上です。

もりけん塾
もりけん先生ブログ

コメント