JavaScriptの引数にはちょっとした秘密があります。
引数の数が指定した数と合わなくてもエラーにならず、プログラムが実行されます。
これは、引数にはargumentsオブジェクトというものに値がわたっているからなのです。
関数の引数はargumentsオブジェクトにデータが格納されています。
argumentsオブジェクトは関数内部でのみ使用できる特殊なオブジェクトです。
function output(){ var i = 0; document.writeln("受け取った引数の数="+arguments.length); for(i = 0; i < arguments.length; i++){ document.writeln(arguments[i]); } } output(10,20,30,40);
「arguments.length」の値を参照すると渡された引数の数が取得できます。
正確にはargumentsオブジェクトの要素数が取得できます。
引数として定義した値は左からargumentsオブジェクトに格納されます。
JavaScriptでは、再帰関数の方法に、argumentsオブジェクトのcalleeというものがあります。
calleeという機能があるので無名関数において再帰関数を実行することが可能になります。
function num_factorial(num){ if(num != 0) { return num * arguments.callee(num-1) } return 1; } document.writeln(num_factorial(4));
日付 | 詳細 |
---|---|
2011/08/16 | コンテンツ公開 |
Copyright (C) 2011 ほぷしぃ. All Rights Reserved.