작성
·
259
1
명강의 잘 듣고 있습니다! 계속 반복해서 들어도 이해가 안가는 부분 있어서 질문합니다. 제 머리로는 한계네요 :(
function _reduce(list, iter, memo) {
if (arguments.length == 2) {
memo = list[0];
list = _rest(list);
}
_each(list, function(val) { // 여기서 val 부분
console.log(val);
memo = iter(memo, val);
});
return memo;
}
_each의 콜백에서 첫번째 인자인 val은 어디서 오는 걸까요?
저게 'list' 안에 있는 각각의 요소인것은 알겠습니다. 그런데 val을 넣어주기 위해서는 우선
_each 펑션이 한번 돌아서 첫번째 인자를 저기에 쏴 줘야 하는데, 처음에 리스트를 돌기 전에 콜백의 'val' 부분에 인자를 넣어주는 녀석은 누구인지 궁금합니다.
혹시 콜백으로 들어온 함수는 바로 실행되는게 아니라,
_each(list, callback(a)) 에서, list를 순회 먼저 하고 각각의 인자들에 callback을 나중에 대입하거나,
이런 식인가요?
이런 강의 들어서 행운이라고 생각합니다. : )