JavaScript中的函數
阿新 • • 發佈:2018-04-29
同名 多個 不能 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中的函數