ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript 関数呼び出し時のパラメーター検出の一般的なメソッド_JavaScript スキル

JavaScript 関数呼び出し時のパラメーター検出の一般的なメソッド_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 18:33:591160ブラウズ
コードをコピー コードは次のとおりです。

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エンジンは関数呼び出し時にパラメータの数を強制的にチェックすることはないため、自分で処理するだけです。 サンプルコード:



コードをコピー


コードは次のとおりです:
var fnMustOneParam = function(p){ // に渡されたパラメータがあるかどうかを確認します if (typeof p== "未定義"){ alert("fnMustOneParam には (1) を呼び出す前にパラメータを渡す必要があります!");
; 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 演算子シンボルを使用して問題を解決できます。 >
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。