更新時間:2023-02-01 來源:黑馬程序員 瀏覽量:
在函數內部的代碼中,當某些值不能確定的時候,可以通過函數的參數從外部接收進來個函數可以通過傳入不同的參數來完成不同的操作。
函數的參數分為形參和實參。在聲明函數時,可以在函數名稱后面的小括號中添加一些數,這些參數被稱為形參。當函數調用的時候,同樣也需要傳遞相應的參數,這些參數稱為實參。函數的形參是形式上的參數,因為當函數聲明的時候,這個函數還沒有被調用,這些參數具體會傳過來什么樣的值是不確定的。而實參是實際上的參數,在函數被調用的時候它的值就被確定下來了。
函數形參和實參的具體語法形式如下。
function 函數名(形參1, 形參2,...) { //函數聲明的小括號里的是形參 // 函數體代碼 } 函數名(實參1, 實參2,...); //函數調用的小括號里的是實參
一個函數的參數可以有多個,使用逗號分隔即可,也可以沒有參數。下面我們通過代碼演示函數參數的具體使用。
function cook(arg) { console.log(arg); } cook('potato');
在上述代碼中,arg是函數的形參,它類似于一個變量,當函數調用的時候,它的值就是調用時傳人的值,即potato。
接下來我們再演示如何利用函數求任意兩個數之和,具體代碼如下。
function getSum(numl, num2) { console.log(num1 + num2); } getSum(1, 3); //輸出結果:4 getSum(3, 8); //輸出結果·11
在上述代碼中,第4行代碼在調用函數時傳人了兩個實參,分別是1和3,這兩個實參對應了函數中的形參num1和num2,然后在第2行對這兩個值進行了相加,因此得到的輸出結果為4。同理,第5行代碼在調用函數時傳入了3和8兩個實參,因此結果為11。
函數參數的數量
JavaScript
函數參數的使用非常靈活,它允許函數的形參和實參個數不同。當實參數量多于形參數量時,函數可以正常執(zhí)行,多余的實參由于沒有形參接收,會被忽略,除非用其他方式(如后面學到的argumens)才能獲得多余的實參。當實參數量小于形參數量時,多出來的形參類似于一個已聲明未賦值的變量,其值為
undefned。
接下來我們通過具體代碼演示函數參數的數量問題。
function getSum(numl, num2) { console.log(numl, num2); } getSum(1, 2, 3); //實參數量大于形參數量,輸出結果:1 2 getSum(1); // 實參數量小于形參數量,輸出結果:1 undefined