一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

javascript function調用時的參數檢測常用辦法

復制代碼 代碼如下:
var f1 = function(p1,p2,p3){
    switch(arguments.length){
        case 0:
            alert("無參版本的f1")
            break;
        case 1:
            alert("1個參數版本的f1:" + p1)
            break;
        case 2:
            alert("2個參數版本的f1:" + p1 + "," + p2)
            break;
        case 3:
            alert("3個參數版本的f1:" + p1 + "," + p2 + "," + p3)
            break;
        default:
            alert("不支持多于3個參數的調用!");
            break;
    }
}
f1();
f1("1");
f1("a",100);
f1("1","2","3");
f1("1","2","3","4")

2.參數個數檢測
js引擎同樣也不會在function調用時,強制檢查參數個數,所以只能自己處理,示例代碼:
復制代碼 代碼如下:
var fnMustOneParam = function(p){

    //檢測有沒有參數傳入
    if (typeof p=="undefined"){
        alert("fnMustOneParam必須要有參數傳入,才能調用(1)!");
        return ;
    }
    //也可以寫成這樣
    if (arguments.length==0){
        alert("fnMustOneParam必須要有參數傳入,才能調用(2)!");
        return;
    }
    //檢測參數個數
    if (arguments.length!=0){
        alert("fnMustOneParam只能傳入一個參數調用!");
        return;
    }
    //to do...
}
//fnMustOneParam(1,3,4);

3.參數基本類型檢測
js引擎同樣更不會檢測參數的類型,如果您希望對參數的基本類型做些限制,可以利用typeof 來判斷基本類型
復制代碼 代碼如下:
var fnString = function(s){
    if (arguments.length!=1){
        alert("參數個數不匹配!");
        return ;
    }
    if (typeof s != "string"){
        alert("只能傳入string類型的參數!");
        return ;
    }

}
//fnString(123);

4.自定義類的參數類型檢測
第3條所提到的方法,只能檢測參數的基本類型,如果是自定義類的參數,如果用typeof運算符號,只能得到object的類型檢測結果,這時可利用instanceof運算符號來解決
復制代碼 代碼如下:
function Person(name,age){
    this.name = name;
    this.age = age;
}
function fnPerson(p){
    if (arguments.length=1 && p instanceof Person){
        alert("fnPerson調用成功,p.name=" + p.name + ",p.age=" + p.age);
    }
    else{                    
        alert("必須傳入一個Person類型的參數才能調用!");
    }
}
fnPerson("asdf");
fnPerson(new Person('菩提樹下的楊過',30))

JavaScript技術javascript function調用時的參數檢測常用辦法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 激情综合丝袜美女一区二区 | 爽爽影院色黄网站在线观看 | 精品成人在线 | 亚洲激情成人网 | 国产精品免费_区二区三区观看 | 国产精品自拍视频 | 五月四房| 日韩美女毛片 | 自拍毛片| 欧美日韩一区二区三区视频 | 伊人久久精品久久亚洲一区 | 久久久久国产一级毛片高清片 | 亚洲精品国产精品乱码不97 | 狠狠亚洲婷婷综合色香五 | 一区二区三区鲁丝不卡麻豆 | 国产区精品一区二区不卡中文 | 亚洲一区二区影院 | 国产欧美一区二区三区在线看 | 成人精品一区久久久久 | 国产剧情自拍 | 国模私拍福利一区二区 | 99国产在线观看 | 一级片性 | 日韩精品免费一区二区三区 | 亚洲国产日产无码精品 | 伊人久久免费 | 免费观看很黄很色的大片 | 亚洲伊人久久网 | 精品福利国产 | 在线视频亚洲 | 调教大奶| 亚洲黄色免费 | 中文字幕123 | 欧美成人激情视频 | 成年美女黄的视频网站 | 中文字幕在线一区二区在线 | 国产专区视频 | 久插视频| 91精品啪在线观看国产 | 一区二区三区四区视频在线 | 一道精品一区二区三区 |