JavaScriptの関数について簡単に確認しておこう。
関数は次のように宣言できます。
function f(x) { return x; }
次の例では関数式を記述して、匿名関数を用意し、funcという変数へ代入しています。
var func = function(x) { return x; }
再帰的な呼び出しをしたいときに名前付き匿名関数を使えます。
var factorial = function self(x) { if (x == 0) return 1; return self(x-1) * x; }
以上のプログラムについて動作確認をするHTMLは次のようになります。
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>setInterval sample 1</title> </head> <body> <div id="target1" style="position:absolute;"></div><br /> <div id="target2" style="position:absolute;"></div><br /> <div id="target3" style="position:absolute;"></div> <script> function f(x) { return x; } var func = function(x) { return x; } var factorial = function self(x) { if (x == 0) return 1; return self(x-1) * x; } document.getElementById('target1').innerHTML = f(2); document.getElementById('target2').innerHTML = func(3); document.getElementById('target3').innerHTML = factorial(3); </script> </body> </html>
JavaScriptについては、下記の書籍の参考になるでしょう。
プログラミング言語一般については、下記が参考になるでしょう。
- クラスベースのオブジェクト指向プログラミング言語の基礎を学ぶには … 改訂版 基礎Java(CD-ROM付) (IMPRESS KISO SERIES)
- クラスベースのオブジェクト指向プログラミング言語を学ぶには … プログラミング言語Java (The Java Series)
- 関数型プログラミング言語を学ぶには … Scalaスケーラブルプログラミング第2版
- プログラミング言語の理論を学には … プログラミング言語の基礎概念 (ライブラリ情報学コア・テキスト)