<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 々上善若水々 閱讀(421) 評論(0)  編輯  收藏 所屬分類: JavaScript

    主站蜘蛛池模板: 中文字幕亚洲不卡在线亚瑟| 亚洲男人的天堂www| 99久久综合国产精品免费| 国产高清免费观看| 久久久久久久综合日本亚洲 | 国产精品亚洲αv天堂无码| 亚洲最大成人网色| MM1313亚洲国产精品| 亚洲视频在线免费观看| 免费乱理伦在线播放| 亚洲一级毛片在线播放| 黄色网址免费在线观看| 好吊妞788免费视频播放| 亚洲AV成人无码久久精品老人| 日本亚洲中午字幕乱码| 国产中文字幕免费观看| 亚洲国产精品午夜电影| 久久国产乱子精品免费女| 亚洲精品无码久久不卡| 亚洲AV无码一区二区三区性色| 亚洲国产精品免费观看| 亚洲最大的成网4438| 国国内清清草原免费视频99| 亚洲人成自拍网站在线观看| 37pao成人国产永久免费视频| 亚洲中文字幕在线观看| 污视频网站免费观看| 国产福利免费观看| 久久久久免费视频| 亚洲欧洲日本国产| 日本免费无遮挡吸乳视频电影| 波多野结衣亚洲一级| av无码久久久久不卡免费网站| 水蜜桃亚洲一二三四在线| 2021久久精品免费观看| 欧洲亚洲综合一区二区三区| 亚洲乱亚洲乱妇无码麻豆| 国产成人精品免费午夜app| 亚洲高清日韩精品第一区| 亚洲电影免费在线观看| 亚洲国产精品日韩av不卡在线 |