-
카테고리
-
세부 분야
데이터 분석
-
해결 여부
미해결
Promise All 질문
20.03.22 16:59 작성 조회수 118
0
노드 강좌에서
PromiseAll 에 Promise 객체들을 넣는것 까지는 알았는데
크롤러 강좌중에
Promise.all 해서 안에다 Map함수를 쓰는 코드는 어떻게 이해해야 하죠? map에서 프로미스 객체를 리턴하는것도 아닌데, promise.all 이 알아서 await 부분이 있는 모든 Promise객체를 모아서 처리하나요?
await Promise.all(
records.map(async (r, i) => {
try {
const page = await brs.newPage();
await page.goto(r[1]);
const scoreEl = await page.$(".score.score_left .star_score");
if (scoreEl) {
const text = await page.evaluate(tag => tag.textContent, scoreEl);
console.log(r[0], "rate", text.trim());
}
await page.close();
} catch (e) {
console.error(e);
}
})
);
답변을 작성해보세요.
0
조현영
지식공유자2020.03.22
map 안에 async 함수가 들어있는데 async함수는 기본 return값이 Promise.resolve(undefined)입니다. 이 값들이 map에 모여서 한 번에 해결됩니다.
답변 1