async의 각 함수를 사용하여 abc 함수를 호출하려고하는데 몇 가지 문제가 있습니다. 코드는 다음과 같습니다.async each and foreach functions
나는 각 기능을 사용하려고 할 때, ABC 방송 기능의 URL로 전달되는 URL이 배열 대신 문자열의 형태로되어 있기 때문에 여기에 for 루프가 사용하고 이유. 그래서 for 루프를 추가하지 않고이 문제를 해결할 다른 방법이 있는지 궁금합니다.
몇 가지 print 문을 추가 한 후 어떤 이유로 코드가 http.get (url [a], newFileLoc, function (error, result) {를 통과하지 못한다는 사실을 깨달았습니다. 각각의 (urls, function() { TypeError : Object #에는 'each'메서드가 없습니다. "
그래서 내 진짜 질문은 정확히 코드에 어떤 문제가있는 것 같습니까? forEach 각각의 대신에 또 다른 오류가있었습니다. "iterator (x, function (err) { TypeError : 정의되지 않은 함수는 함수가 아닙니다."
누군가 제발 도와주세요!
var abc = function (url, cb) {
for (var a = 0; a < url.length; a++){
var index = url[a].lastIndexOf("/") + 1;
var filename = url[a].substr(index);
var newFileLoc = "./tmp/" + filename;
http.get(url[a], newFileLoc, function (error, result) {
if (error) {
console.error(error);
} else {
cb();
}
});
}
}
var urls = ["www.randomurl.random.random/", "www.randomurl.random.random/"];
async.each(urls, abc(urls, function(){
console.log('downloaded' + results);
}), function(err){
if(err){
console.log(err);
}
});
'각'에 전달하지 않으면 어떻게'abc'가 호출 될 수 있습니까? – Dan455
죄송합니다, 이것은 실수였습니다. 수정되었습니다! – jensiepoo
그럼'var async = require ('async')'를했을까요? –