0
想象一下這樣的代碼:Javascript:與使用返回調用回調不同?
function foo(data) {
// ... do something with data
}
function do(userInput, callback) {
callback(userInput);
}
function doWithReturn(userInput, callback) {
return callback(userInput);
}
// ...
do('Hello, World', foo);
doWithReturn('Hello, World', foo);
是否有過使用普通DO()和任何好處不doWithReturn()?
我問,因爲,假設,如果我們不知道是什麼富()在內部做了(即也許它有一個return語句,也許它只是觸發一個啞巴alert(data)
),使用doWithReturn調用FOO()總是似乎只是「更安全」,因爲如果foo()碰巧返回一個值,那麼不使用doWithReturn顯然是錯誤的。
完全取決於你寫的函數的性質。當你的do/doWithReturn函數變得更加真實世界的應用程序時,如果返回值應該傳遞,它通常會變得更清晰。 –
在不知道內部工作原理的情況下使用一個函數是可以的,但是如果不知道它返回什麼,我就不會使用它。 – Christophe