자바스크립트 리뷰
혼공자 콜백함수
가문비7
2023. 4. 3. 23:50
자바스크립트에서는 함수도 다른 함수의 매개변수로 전달할 수 있다. 함수도 객체이다. 객체의 모든 속성을 갖고 있다.
그래서 아래와 같은 코드가 존재한다.
// 함수를 선언합니다.
function callThreeTimes (callback) {
for (let i = 0; i < 3; i++) {
callback(i)
}
}
function print (a) {
console.log(`${a}번째 함수 호출`)
}
// 함수를 호출합니다.
callThreeTimes(print)
맨아랫줄의 호출을 했는데 그럼 어떻게 되는걸까?
callThreeTimes 안에 print 함수가 매개변수로 들어간다. callThreeTimes 안에서 print의 매개변수는 i 가되므로 반복문에 따라서 console창에는 아래처럼 뜨게 된다.
0번째 함수 호출
1번째 함수 호출
2번째 함수 호출