javaScript

時計を作ってみる

指定した時間が経過した後に何か処理をしたかったり、一定時間ごとに処理を繰り返したい、ということがあります。javaScriptには、そのような場合に便利なタイマーというものがあります。

タイマーというと、身近なところだとスマホの「ストップウォッチ」があるかと思います、それと同様に。一定時間経過後に好きな処理をさせることができます。

このタイマー機能を使うにはwindowオブジェクトに用意されているsetTimeoutメソッドを使用します。

サンプルコードの実行結果はこちら

setTimeoutメソッド

setTimeoutは、指定した時間後に指定した処理を実行するwindowオブジェクトのメソッドです。下記のように書きます。

戻り値はタイマーIDと呼ばれるタイマーを識別する値です。windowは省略できます。たとえば、10秒後にダイアログボックスを表示したいときは以下のように書きます。

処理を繰り返したい

同じ処理を繰り返すには、関数の内部で、setTimeoutメソッドを実行し、自分自身を呼び出すようにします。setTime関数では、最後にsetTimeoutメソッドで1秒ごと(1000ミリ秒)ごとにsetTime関数自身を呼び出すことで表示を更新しています。

タイマーを停止する

起動したタイマーは停止することができます。そのためには、setTimeoutの戻り値であるタイマーIDを引数にして、clearTimeoutメソッドを使用します。

タイマーを使い、Webページに制限時間を設定する

タイマーを使うと、Webページの閲覧時間に制限を加えることができます。ある程度の時間あるページを眺めていると、強制的に別のページに飛ばされる処理です。

そのためには、setTimeoutメソッドから、WEbページのアドレスを管理するlocationオブジェクトのreplaceメソッドを呼びます。replaceメソッドは、現在のWebページの内容を引数で指定したアドレスのWebページに置き換えるメソッドです。

例えば10秒経過後にGoogleのページに遷移するには、以下のように書きます。

-javaScript
-