자바스크립트에서는 함수도 다른 함수의 매개변수로 전달할 수 있다. 함수도 객체이다. 객체의 모든 속성을 갖고 있다.
그래서 아래와 같은 코드가 존재한다.
// 함수를 선언합니다.
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번째 함수 호출
'자바스크립트 리뷰' 카테고리의 다른 글
간단한 추상화 연습2 : 객체를 파라미터로 받는 함수[혼공자 9-1-3] (0) | 2023.04.05 |
---|---|
간단한 추상화 연습: 성적 데이터 관리 코드[혼공자 9-1-2] (0) | 2023.04.05 |
혼공자 chapter 05-2. filter() 메서드 (0) | 2023.04.03 |
break 키워드와 continue 키워드 사용하기 (0) | 2023.04.01 |
while 문은 for 문과 거의 같다. (0) | 2023.04.01 |