JavaScriptにおいて、関数はオブジェクトになっています。
function a() {
alert("hello");
}
こう書けますが、下のように書くこともできます。
var a = function () {
alert("hello");
};
これは、関数は代入可能なオブジェクトであることを示しています。
そして、このように代入した変数aは、その後ろに「()」を記述することで関数本体を実行することができます。
つまり、次のような使い方ができます。
a(); //実行
<input type="button" value="a()" onclick="a()" > <input type="button" value="alert(a)" onclick="alert(a)">そして、関数は次のようなことができます。
function sub1(){
alert(arguments[0]); //「123」を表示
alert(arguments[1]);//「abc」を表示
alert(arguments.length);//「2」を表示
}
var sub2 = sub1(123,"abc");