2017-01-07 19 views
0

私はこのcodeに出くわしたので、ときほとんどのJavaでの作業:関数はpostResponse(errは、応答のとき、なぜ私たちはFORMSUBMITにpostResponseを使用しているされてJavaScriptを - コールバック対コールバック()

document.querySelector('form').onsubmit = formSubmit 

function formSubmit (submitEvent) { 
    var name = document.querySelector('input').value 
    request({ 
    uri: "http://example.com/upload", 
    body: name, 
    method: "POST" 
    }, postResponse) 
} 

function postResponse (err, response, body) { 
    var statusMessage = document.querySelector('.status') 
    if (err) return statusMessage.value = err 
    statusMessage.value = body 
} 

質問、体)。使用しているときpostResponseどのパラメータがエラー、応答および本文であるかをどのように知っていますか?

ありがとうございました。

答えて

2

postResponseは変数です。その変数の値は関数です。

関数を含む変数の後に()を置くと、その関数が呼び出されるが呼び出されます。

関数を含む変数の後に(something, something)を置くと、関数が呼び出され、引数が渡されます。

このコードでは関数が呼び出されていません。それはrequestの引数として渡しています。他のコードは後でそれを呼び出すことがあります。

+0

ありがとうございました。 formSubmit()では、postResponseはどのパラメータで実行されますか?それはどこから誤り、反応、身体を得ているのですか? –

+0

"formSubmit()では、postResponseはどのパラメータで実行されますか?" - それはできません。私が言ったように:*それは引数としてそれを渡しています* – Quentin

+0

"それはどこからエラー、応答、身体を取得していますか?" - 'request'関数のソースコードを見てください。 – Quentin

関連する問題