인프런 커뮤니티 질문&답변
return acc.then(recur) 이부분에 대해 이해가 잘안되네요
작성
·
269
0
const reduceFunc = (f, acc, iter) => {
if (!iter) {
iter = acc[Symbol.iterator]();
acc = iter.next().value;
}
return go1(acc, function recur(acc) {
for (const a of iter) {
acc = f(acc, a);
if (acc instanceof Promise) {
return acc.then(recur);
}
}
return acc;
});
};
acc.then(recur)를 하면 재귀한 값(프로미스)가 리턴이 되면서 실행 컨택스트가 종료되고 go1함수가 바로 리턴이 되는걸로 보이는데, 실행해보면 또 그렇지 않네요,,, 리턴을 해도 내부에 실행 로직이 돌고있나요?





