我构建了这个函数,但它什么也没有返回:
function myFunction(index){
var resultat = "";
fs.readFile(__dirname + '/File.xml', function(err, data) {
parser.parseString(data, function (err, result) {
resultat = result['level1']['level2']['level3'][index];
//console.log(resultat); // works
});
});
return resultat;// Return nothing
// return 'test' // Works
}
希望你能帮助我!
答案 0 :(得分:0)
您的函数在xml调用有时间加载远程XML之前返回。
尝试:
function getItem(index, callback){
var resultat = "";
fs.readFile(__dirname + '/SearchRequest.xml', function(err, data) {
parser.parseString(data, function (err, result) {
resultat = result['rss']['channel']['item'][index];
//console.log(resultat); // works
callback(resultat);
});
});
}
var index = 1;
getItem(index, function(d){
console.log(d);
});