setInterval() メソッド
setInterval() メソッドは、指定されたミリ秒ごとに指定されたコールバック関数を呼び出す、または数式を実行する Window オブジェクトのメソッドです。
クリアするためには clearInterval() メソッドを使います。
似たメソッドに setTimeout() があります。setTimeout() は指定時間後に関数や数式を実行します。
id = setTimeout( get_example, 1000 );
setInterval() メソッドは定期的にサーバーにリクエスを送ることに利用することができます。
詳しくはsetInterval() メソッドによる定期リクエスト
を参照してください。
ページ内 Index
setInterval() メソッドによる定期リクエスト
setInterval() メソッドは、チャットやブラウザゲームのように web ページが常に変化する場合に、サーバーに定期的にリクエストを送ってその変化のあったページを受け取ることができます。
ブラウザは双方向通信ではないために、クライアントからリクエストを出さない限りはサーバーからレスポンスはありません。 そのために、サーバーで何らかの変化があってもクライアントで知ることができません。
ユーザーがブラウザから web ページをリクエストするとサーバーからその web ページが送らます。ブラウザからリクエストが無い限りは、サーバーから web ページを送ってきません。 そのために、ページの内容が常に変化するようなチャットやブラウザゲームのような場合に その内容に変化があってもユーザーは知ることができません。 ブラウザに web ページに変化があったことをサーバーが知らせてくれる機能がないためです。
このことを解消するためにブラウザから定期的にリクエストをサーバーに出すか、Ajax のように相互通信ができるような仕組みを取り入れるかをしなければなりません。
setInterval() メソッドは、定期的にリクエスをサーバーに出す方法として利用できます。
Syntax
返り値は設定されたtimeoutのIDです。
ID = setInterval(function, delay, param1, param2, ...)
引数(Parameter Values)
Parameter | 摘要 | |
---|---|---|
function | 実行する関数 | |
delay | Optional | function を実行する間隔。ミリ秒単位(1/1000秒)。省略時は0 |
param1, param2, ... | Optional | 関数に渡す引数 |
返り値(Return Values)
Type | 摘要 |
---|---|
ID | setIntervalのID |
Example
setInterval() メソッドの例です。以下の確認
ボタンをクリックすると 1000 ミリ秒後にコールバック関数を実行します。
コールバック関数が実行されたら、以下のsetInterval() の ID :
に setInterval() 返り値が表示され、メッセージが表示されます。