2017-05-06 10 views
1

以下は、ピザを注文するためのコードです。私が明確に理解していないことの1つは、getSubTotalにitemCountパラメータがあり、getSubTotal関数が呼び出されたときにその行の最後にitemCountパラメータではなくorderCountという引数があることです。それは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の値で呼び出されます。ファンクションコールの開始時に、パラメータitemCountorderCountの値に設定されている場合、値を計算して戻される命令が実行されます。次にgetSubTotal(orderCount)は戻り値と同じです。

orderCount有効な引数(関数に渡された名前または値)とitemCount仮引数(関数内で渡された値を意味する名前)と呼ばれています。

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

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

これは必要なものです。基本的にはbの値を渡しています

0

orderCountは、関数呼び出しで関数に渡される値です。itemCountは、関数本体にバインドされる値です。言い換えれば、それはformal parameter and actual argumentの違いです。