最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript中的方法重載實(shí)例

 更新時(shí)間:2015年03月16日 11:31:53   投稿:junjie  
這篇文章主要介紹了JavaScript中的方法重載實(shí)例,本文直接給出重載實(shí)例,需要的朋友可以參考下

.NET里面的方法重載用著的確很方便,哪Javascript里面能不能也哪樣做呢?

Javasciprt里面本生是沒有方法重載的功能,以前很多人的做法可能是直接少傳參數(shù)過去,然后在根據(jù)參數(shù)是否為 “undefined” 未定義來決定怎么處理,從而實(shí)現(xiàn)類似方法重載的功能。

例如:

復(fù)制代碼 代碼如下:

var showMessage = function(name,value,id){
    if(id != ”undefined”){
        alert(name+value+id);
    }
    else if(value != ”undefined”){
        alert(name + value);
    }
    else{
        alert(name);
    }
}

showMessage(”哈哈”);
showMessage(”哈哈”,”??”);
showMessage(”哈哈”,”??”,124124);

今天在Ajaxian上面看到了一篇關(guān)于Javascript方法重載的寫法,它是能過另外一個(gè)方法來實(shí)現(xiàn)的。

看一下這個(gè)代碼:

復(fù)制代碼 代碼如下:

// addMethod - By John Resig (MIT Licensed)
function addMethod(object, name, fn){
    var old = object[ name ];
    object[ name ] = function(){
        if ( fn.length == arguments.length ){
         return fn.apply( this, arguments );
     }
     else if ( typeof old == 'function' ){
      return old.apply( this, arguments );
  }
}
};

var UserInfo = function(){
    addMethod(this,”find”,function(){
        alert(”沒有參數(shù)”);
    });

    addMethod(this,”find”,function(name){
        alert(”傳入的參數(shù)是一個(gè),叫 ”+name);
    });

    addMethod(this,”find”,function(name,value){
        alert(”傳入了兩個(gè)參數(shù),一個(gè)叫 name=”+name+” 一個(gè)叫 value=”+value);
    });
};

var userinfo = new UserInfo();
userinfo.find();
userinfo.find('我是誰?');
userinfo.find('某某某','1512412514');


看,這樣一來就簡(jiǎn)單了……

相關(guān)文章

最新評(píng)論

德江县| 东至县| 托里县| 会泽县| 彩票| 白朗县| 叶城县| 武威市| 东安县| 揭西县| 泰顺县| 南康市| 天全县| 东丽区| 永新县| 贞丰县| 天门市| 乌鲁木齐市| 新蔡县| 闽侯县| 建始县| 宁安市| 高密市| 江川县| 萍乡市| 邹城市| 玉林市| 工布江达县| 侯马市| 泰兴市| 都昌县| 吐鲁番市| 梁河县| 庄浪县| 武邑县| 东丰县| 吴江市| 河北区| 衡阳县| 深圳市| 新乐市|