我是新入javascript,目前我正在學習回調我的腳本。這個腳本應該返回減少的話中的對象回調問題
的陣列var fs = require('fs')
var dict = ['corpus.txt','corpus1.txt','corpus2.txt'];
mapping(dict, function(error,data){
\t if(error) throw error
\t console.log(data)
})
function mapping(list, callback){
\t var txtObj = []
\t list.forEach(function (val) {
\t \t readFile(val, function(error,data){
\t \t \t txtObj.push(data)
\t \t })
\t })
\t function readFile(src, cb){
\t \t fs.readFile(src,'utf8', function (error,data) {
\t \t \t if (error) return callback(error,null)
\t \t \t return mapred(data)
\t \t })
\t }
\t return callback(null,txtObj)
}
但它返回空數組。任何幫助,將不勝感激。 謝謝!
你需要不是立即調用'callback',而是稍後調用'readFile'。這有點棘手,因爲你有多個文件。試着讓它首先使用單個文件。一旦你明白了這是如何工作的,回到另一個問題就是如何使它與許多人合作。 – Thilo