ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル

WBOY
WBOYオリジナル
2016-05-16 16:38:301164ブラウズ

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル と PHP は、関数パラメータの受け渡しの点で若干異なります。PHP の仮パラメータは実際のパラメータの数と一致する必要がありますが、JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル はより柔軟であり、実際のパラメータを渡してもエラーは報告されません。パラメータは、仮パラメータよりも少ないか、またはそれ以上です。

仮パラメータより実際のパラメータが多い場合、エラーは報告されません

function say(a){
   alert(a); 
}
 
say('JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル','WEB技术博客');

実行結果

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル

実パラメータよりも仮パラメータを多くした結果を見てみましょう

function say(a,b){
   alert('a 的值是 '+a+'\nb 的值是 '+b); 
}
 
say('JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル');

実行結果

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル

a は最初の実パラメータ「Qiongtai Blog」に対応し、b には対応する実パラメータがないため、値は未定義です

引数オブジェクト

実際、プログラム設計がより複雑な場合には、パラメーターの数を指定せずに、それらを柔軟に使用することがあります。関数には実際のパラメータ グループを格納するために特別に使用される配列引数があり、引数を通じて実際のパラメータの数と値を知ることができます。

function arg(){
    var str = '总共传了'+arguments.length+'个参数
';
    for(var i=0;i<arguments.length;i++){    
        str += '第'+(i+1)+'个参数值:'+arguments[i]+'\n'; 
    }
    alert(str);
}
arg('JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル','PHP博客','WEB技术博客');

実行結果

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル

上記の例では、関数 arg を定義し、その関数に仮パラメータを指定しませんでしたが、代わりに、実際のパラメータを受け取るために引数オブジェクトを使用しました。これは非常に柔軟です。

たとえば、セットに含まれる数値の数に関係なく、数値セット内の最小の数値を計算するためにこれを使用できます。次のコードのような:

function arg(){
    var tmp = 0, str = '在 ';
    for(var i=0;i<arguments.length;i++){    
        for(var g=0;g<arguments.length;g++){
            if(arguments[g]<arguments[i]){
               tmp = arguments[g]; 
            } 
        }
       str += arguments[i]+',';
    }
    alert(str.substr(0,str.length-1)+' 里最小的值是 '+tmp);
}
arg(200,100,59,3500);

4つの数値200、100、59、3500の比較結果を実行します

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル中arguments对象

5 と 60 という 2 つの数字を追加します

function arg(){
    var tmp = 0, str = '在 ';
    for(var i=0;i<arguments.length;i++){    
        for(var g=0;g<arguments.length;g++){
            if(arguments[g]<arguments[i]){
               tmp = arguments[g]; 
            } 
        }
       str += arguments[i]+',';
    }
    alert(str.substr(0,str.length-1)+' 里最小的值是 '+tmp);
}
arg(200,100,59,3500,5,60);

6 つの数値の比較結果を実行します: 200、100、59、3500、5、60

JavaScript で引数を使用して、関数によって渡されるパラメーターの数を取得する_javascript スキル中arguments对象

2 つの操作の結果に基づいて、渡した数値に関係なく、結果を正しく比較できることがわかりました。引数は通常、実際のパラメータの数が可変である場合に使用されます。たとえば、上の例では、比較のために 5 つの数値を渡すことも、比較のために 100 の数値を渡すこともできます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。