我對Javascript編程非常陌生,正在研究處理異步函數的方式。我碰到真正有用的資源,列出這個作爲一個例子來:使用回調函數和調用方法的區別
var fs = require('fs')
var myNumber = undefined
function addOne(callback) {
fs.readFile('number.txt', function doneReading(err, fileContents) {
myNumber = parseInt(fileContents)
myNumber++
callback()
})
}
function logMyNumber() {
console.log(myNumber)
}
addOne(logMyNumber)
但是你可以達到同樣的效果這樣做:
var fs = require('fs')
var myNumber = undefined
function addOne() {
fs.readFile('number.txt', function doneReading(err, fileContents) {
myNumber = parseInt(fileContents)
myNumber++
logMyNumber()
})
}
function logMyNumber() {
console.log(myNumber)
}
addOne()
,如果你能,會是什麼目的/優勢使用回調?
對於那些有興趣的文章從這裏走過:https://github.com/maxogden/art-of-node#callbacks
很好的解釋!我花了很大一部分時間玩回調,發現它們對於非常不可預知的代碼非常有用。很高興看到使用的不同示例,以及爲什麼直接致電不是個好主意 - 謝謝! – Novastorm
很高興聽到:) –