2017-05-06 139 views
1

下面是訂購披薩的代碼。有一件事我沒有清楚地理解,getSubTotal有一個參數itemCount,並且在函數getSubTotal被調用時,它的參數是orderCount而不是參數itemCount。是否因爲orderCount是itemCount的參數?JavaScript參數混淆

希望我明確解釋了我的問題。

var orderCount = 0; 

function takeOrder(topping, crustType) { 
    console.log('Order: ' + crustType + ' crust topped with ' + topping); 
    orderCount = orderCount + 1; 
} 

function getSubTotal(itemCount) { 
    return itemCount * 7.5; 
} 

takeOrder('bacon', 'thin'); 
takeOrder('pepperoni', 'regular'); 
takeOrder('pesto', 'thin'); 

console.log(getSubTotal(orderCount)); 

謝謝。

+0

ItemCount是函數局部變量 –

+0

您應該瞭解編碼中的參數和參數。 javascript的簡短說明:https://www.w3schools.com/js/js_function_parameters.asp – gaganshera

+0

你的理解是正確的。 'itemCount'是'getSubTotal'函數參數的名稱。當你調用這個函數時,你傳遞'orderCount'作爲參數給函數。 – alpeware

回答

0

沒錯。當您調用getSubTotal(orderCount)時,將使用全局變量orderCount的值調用該函數。在函數調用開始時,參數itemCount被設置爲值orderCount,然後執行指令以計算返回的值。然後表達式getSubTotal(orderCount)等於返回值。

orderCount稱爲有效論據(姓名或傳遞給函數值),並itemCount一個正式參數(表示在函數內部傳遞的值的名稱)。

0
var b=10; 
function abc(a){ 
    return a*10; 
} 

c=abc(b); 
console.log(c); 

這就是你需要的。您基本上將b的值傳遞給