<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的漫漫程序之旅

    專注于JavaWeb開發
    隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
    數據加載中……

    JavaScript函數重載和類型檢查

    <!--
    函數重載和類型檢查
    重載是其它面向對象語言的一個普通特性,像Java
    (JavaScript是不能直接寫重載的,但我們可以通過另
    一種方式來實現).
    要想實現重載必須知道:所傳參數的個數,類型都是什么.
    我們就從這入手.
    -->
    <html>
        
    <head>
            
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            
    <title>Untitled Document</title>
            
    <script>
                
    //arguments 是每個javascript函數內置的一個對象
                //返回傳入參數的數組
                function getArgs(){
                    
    var arr = new Array();
                    
    for (var i = 0; i < arguments.length; i++{
                        arr.push(arguments[i]);
                    }

                    
    return arr;
                }

                
                
    var arr = getArgs("a""b""c");
                
    //輸出所有參數
                for (var i in arr) {
                    alert(arr[i]);
                }

                
    //發送短消息的函數
                function sendMessage(msg, obj){
                    
    //參數為2
                    if (arguments.length == 2{
                        
    //對象的屬性函數
                        obj.handleMsg(msg);
                    }

                    
    //一個參數時
                    else {
                        alert(msg);
                    }

                }

                
                
    //一個參數時的調用 
                sendMessage("Hello,World");
                
                sendMessage(
    "How are you ?"{
                    handleMsg: 
    function(msg){
                        alert(
    "This is a custom message:" + msg);
                    }

                }
    );
                
    /*
                 * 類型檢查,關鍵字typeof
                 
    */

                
    function check(str){
                    
    if (typeof str == "undefined"{
                        alert(
    "an error occurred!")
                    }

                    
    else {
                        alert(str);
                    }

                    
                }

                
                
    var a = 1;
                
    //用構造函數屬性確認對象的類型
                if (a.constructor == Number) {
                    alert(
    true);
                }

                
    //用typeof關鍵字
                if (typeof a == "number"{
                    alert(
    true);
                }

                
    var s = []; //或var s = new Array();
                if(s.constructor == Array)
                
    {
                    alert(
    "array");
                }

                
            
    </script>
        
    </head>
        
    <body>
        
    </body>
    </html>

    typeof 和constructor返回類型一覽表:
    Variable typeof      Variable   Variable.constructor
    { an: “object” }   object    Object
    [ “an”, “array]   object     Array
    function(){}            function   Function
    “a string”            string        String
    55                          number    Number
    true                         boolean    Boolean
    new User()              object        User

    posted on 2008-07-09 14:33 々上善若水々 閱讀(418) 評論(0)  編輯  收藏 所屬分類: JavaScript

    主站蜘蛛池模板: 亚洲老妈激情一区二区三区| 成人久久免费网站| 色婷婷六月亚洲婷婷丁香| 亚洲AV无码乱码国产麻豆穿越| 中文字幕亚洲一区| 亚洲国产精华液网站w| 亚洲JIZZJIZZ妇女| 成人免费网站久久久| 国产精品免费观看调教网| 影音先锋在线免费观看| 亚洲国产成人久久综合野外| 啦啦啦高清视频在线观看免费| 日韩亚洲国产二区| 亚洲精品中文字幕乱码影院| 色多多www视频在线观看免费| 全部免费毛片在线| 亚洲尹人九九大色香蕉网站| 99久久精品免费视频| 亚洲午夜精品久久久久久浪潮| 亚洲自国产拍揄拍| 日本在线看片免费| 亚洲性色高清完整版在线观看| 人人玩人人添人人澡免费| 亚洲国产成人精品无码一区二区 | 亚洲成AV人片在WWW| 国产成人免费网站在线观看 | 久久er国产精品免费观看2| 4hu四虎最新免费地址| 亚洲热线99精品视频| 日韩a毛片免费观看| 日韩精品免费电影| 亚洲 日韩 色 图网站| 最近在线2018视频免费观看| 国产成人麻豆亚洲综合无码精品| 日韩av无码久久精品免费| 亚洲一区二区三区高清在线观看 | 亚洲精品国产品国语在线| 午夜国产精品免费观看| 亚洲欧洲校园自拍都市| 国产yw855.c免费视频| 美女黄频视频大全免费的|