var f1 = function(p1,p2,p3){
switch(arguments.length){
case 0:
alert("パラメータなしバージョンの f1")
case 1:
alter("1 パラメータバージョンの f1: " p1)
ブレーク;
ケース 2:
アラート (f1 の 2 パラメーター バージョン: " p1 ", " p2)
ブレーク;
ケース 3:
アラート( "3 -f1 のパラメータ バージョン: " p1 "、" p2 "、" p3)
break;
デフォルト:
alert("3 つを超えるパラメータを指定した呼び出しはサポートされていません!");
Break ; 2","3");
f1("1","2","3","4")
2. パラメータ番号検出
jsエンジンは関数呼び出し時にパラメータの数を強制的にチェックすることはないため、自分で処理するだけです。 サンプルコード:
コードをコピー
コードは次のとおりです:
; warning("fnMustOneParam には (2) を呼び出す前にパラメータを渡す必要があります。" );
return;
alter("fnMustOneParam は 1 つのパラメータでのみ呼び出すことができます!");
3 . パラメーターの基本型の検出
JS エンジンはパラメーターの型も検出しません。パラメーターの基本型に制限を加えたい場合は、typeof を使用して基本型を決定できます
コードをコピーします
コードは次のとおりです:
var fnString = function (s){
if (arguments.length !=1){
alter("パラメータの数が一致しません!");
return ;
}
if (typeof s != "string"){
alter("渡せるのは文字列型パラメータのみです!"); 🎜>
4. カスタムクラスのパラメータ型検出
記事3で述べた方法ではパラメータの基本型しか検出できません。カスタムクラスのパラメータで typeof 演算子を使用すると、オブジェクトの型検出結果のみを取得できます。この場合、instanceof 演算子シンボルを使用して問題を解決できます。 >