자바스크립트 콜백 함수 본문
자바스크립트에서 비동기로 호출 된 특정 로직이 끝나고 나서 실행되도록 하는 함수를 콜백함수라고 합니다.
일반적으로 자바스크립트에서 비동기로 함수를 호출하게 되면 그 함수 로직이 끝날때까지 기다리는것이 아니라 바로 다음으로 넘어가게 되는데요,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function first() { setTimeout(function() { console.log(1); }, 1000); } function second() { console.log(2); } first(); second(); // 2 // 1 // 출력 | cs |
first()를 실행하고 second()를 실행하였음에도 second가 먼저 실행이 되는 것을 볼 수 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | function doHomework(subject, callback) { console.log('Strating my ' + subject + ' homework.'); callback(); } function endHomework() { console.log('Finished my homework!!'); } doHomework('math', endHomework); // Strating my math homework. // Finished my homework!! | cs |
콜백의 가장 기본적인 구성으로, doHomework 함수에서 파라미터로 callback 함수를 넘겨주면, 내부 로직 마지막에 callback 함수를 호출하는 모습을 볼 수 있습니다.
파라미터로 넘겨주는 콜백 함수는 외부에서 선언해 넘길 수도 있고, 익명함수로 바로 선언하여 사용할 수도 있습니다.
'Javascript' 카테고리의 다른 글
자바스크립트 클로저 (0) | 2020.09.25 |
---|---|
호이스팅 정리 (0) | 2020.09.24 |
함수 선언문과 함수 표현식 (0) | 2020.09.19 |
Node.js와 DB 연동하기 (0) | 2020.09.18 |
이미지맵 좌표 유동적으로 적용하기 (1) | 2020.09.17 |
Comments