とほほのJavaScript入門(関数)

とほほのWWW入門 > とほほのJavaScript入門 > 関数
2000年3月25日版

関数(Function)

function func(arg1, arg2, ....) {...} (e3/N2)
関数を定義する。
    function add(x, y) {
        return(x + y);
    }
これにより、Math.sin() や Math.cos() などに加えて、add() という関数を用いることができるようになる。この関数は次のようにして呼び出す。
    xx = add(3, 5);
    document.write("答えは" + xx + "です。");
数学関数だけでなく、関数の中でフォームの値を参照したり、確認ダイアログ(window.confirm())を表示したりなど、複雑なことができる。

関数宣言時の引数の個数が、呼び出し時の引数の個数よりも多ければ、その分は、関数内のみに有効なローカル変数として使用できる。ローカル変数であることを示すために、実引数との間に余分なスペースをいれるとよい。

    funcstion add(x, y,   ans) {
        ans = x + y;
        return(ans);
    }

Function(arg1, arg2, ...., statements) (e4/N3)
関数オブジェクトを作成する。 下記のコードは上記のfunctionによる宣言と同等。
    add = new Function("x", "y", "return(x+y)");

func
function や new Function()で作成した関数名。

func.arity (N4)
関数が要求する引数の個数。<SCRIPT>タグのLANGUAGE属性で"JavaScript1.2"を指定した場合のみ有効。

func.arguments (e4/N3)
引数の配列。個数不定の引数を受け取る際に使用する。
    function func(list) {
        for (i = 0; i < func.arguments.length; i++) {
            document.write(func.arguments[i], "<BR>");
        }
    }

func.caller (e4/N3)
この関数を呼び出した関数。将来のJavaScriptのバージョンでは削除される予定らしいので使用しない方が無難。
    function func1(x, y) {
        func2();
    }
    function func2() {
        alert(func2.caller.arguments.caller);
    }

func.prototype.newName (e4/N3)
prototype

func.toString() (e4/N3)
この関数の内容を文字列に変換する。

Copyright (C) 1996-1999 とほほ
http://wakusei.cplaza.ne.jp/twn/wwwjsfun.htm