有人可以告诉我这段代码有什么问题吗?
var identifiers = getIdentifiers();
for(var i = 0; i < identifiers.length; i++){
async.series({
country: function(){return getCountry(identifiers[i])},
price: function(){return getPrice(identifiers[i])}
}, function(err, result) {
console.log("Country: " + result.country + ", Price: " + result.price);
});
}
感谢您的反馈。我想要实现的是获得一个由“Country:”+ result [0] +“,Price:”+ result [1]组成的字符串。目前我有“国家:未定,价格:未定义”。
var identifiers = getIdentifiers();
for(var i = 0; i < identifiers.length; i++){
async.series([
function(callback){
getCountry(identifiers[i], function(result) {
callback(result);
})},
function(callback){
getPrice(identifiers[i], function(result) {
callback(result);
})}
], function(err, result) {
console.log("Country: " + result[0] + ", Price: " + result[1]);
});
}
答案 0 :(得分:0)
异步系列回调使用2个参数。首先是错误&amp;结果第二。
var identifiers = getIdentifiers();
for(var i = 0; i < identifiers.length; i++){
async.series([
function(callback){
getCountry(identifiers[i], function(result) {
callback(null, result);
})},
function(callback){
getPrice(identifiers[i], function(result) {
callback(null, result);
})}
], function(err, result) {
console.log("Country: " + result[0] + ", Price: " + result[1]);
});
}
发送&#34; null&#34;为了错误。但是,当然您实际上可以从getPrice
和getCountry
收到错误,然后将其传递给异步。