1. 程式人生 > >JavaScript中的函數

JavaScript中的函數

同名 多個 不能 amp 訪問 rgs 長度 代碼 PE

1、Js中函數的重載:JS中的函數,參數是沒有要求的,一個函數假設定義了幾個參數,那麽調用者可以傳,也可以不傳,也可以只專一個兩....還可以傳很多個,所以我們不能依賴參數的個數來區別兩個同名函數(下方代碼理解)

<!DOCTYPE html>
<html>
<head>
    <title>Function Example 7</title>
    <script type="text/javascript">
    
    function fa(a, b)
    {
        alert(a + b);
    }
    
    
function fa() { alert(10); } fa(300,600); var fb = function(a, b){alert(a + b)}; fb = function(){alert(10);}; fb(12, 16); //10 var fc = new Function(a, b, "alert(a+b)"); fc = new Function("alert(10)"); //JS中的函數,參數是沒有要求的,一個函數假設定義了幾個參數,那麽調用者可以傳,也可以不傳,也可以只專一個兩....還可以傳很多個,所以我們不能依賴參數的個數來區別兩個同名函數
//JS中的函數的重載模擬: function doAdd() { //arguments 對象:參數數組。 if(arguments.length == 1) { alert(arguments[0] + 10); } else if (arguments.length == 2) { alert(arguments[0] + arguments[1]); } }
//調用一個函數,通過傳參的個數而得到了兩種結果。 doAdd(10); //20 doAdd(30, 20); //50 </script> </head> <body> </body> </html>


2、js中函數的參數數組(arguments)的訪問

<!DOCTYPE html>
<html>
<head>
    <title>Function Example 5</title>
    <script type="text/javascript">
        //arguments參數數組
        function sayHi() {
            alert("Hello " + arguments[0] + ", " + arguments[1]);//參數數組的訪問
        }

        sayHi("Nicholas", "how are you today?");

         function howManyArgs() {
            alert(arguments.length);//參數數組的長度
        }
        
        howManyArgs("ing", 45);    //2
        howManyArgs();                //0
        howManyArgs(12);              //1
    </script>
</head>
<body>

</body>
</html>

JavaScript中的函數