JavaScript setIntervalで呼び出す関数へ引数を指定したいときの使い方は次のようにクロージャを使います。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>setInterval sample 3</title>
</head>
<body>
<div id="target" style="position:absolute;">target</div>
<script>
var INTERVAL=1000;
var COUNT_MAX=3;
var cnt=0;
function runner(time_value) {
if (cnt > COUNT_MAX) {
clearInterval(id);
return;
}
var v = cnt + ':' + time_value;
document.getElementById('target').innerHTML = v;
cnt++;
}
var id=setInterval(function() {
var time_value = (new Date()).getTime();
runner(time_value);
}, INTERVAL);
</script>
</body>
</html>
JavaScriptについては、下記の書籍の参考になるでしょう。
プログラミング言語一般については、下記が参考になるでしょう。
- クラスベースのオブジェクト指向プログラミング言語の基礎を学ぶには … 改訂版 基礎Java(CD-ROM付) (IMPRESS KISO SERIES)
- クラスベースのオブジェクト指向プログラミング言語を学ぶには … プログラミング言語Java (The Java Series)
- 関数型プログラミング言語を学ぶには … Scalaスケーラブルプログラミング第2版
- プログラミング言語の理論を学には … プログラミング言語の基礎概念 (ライブラリ情報学コア・テキスト)