콜백이란
콜백 함수는 함수 포인터를 통해 호출되는 함수입니다. 함수 포인터(주소)를 다른 함수에 매개변수로 전달하고 이 포인터가 가리키는 함수를 호출하는 데 사용되는 경우 이를 콜백 함수라고 합니다. 콜백 함수는 함수 구현자가 직접 호출하는 것이 아니라 특정 이벤트나 조건이 발생했을 때 상대방이 해당 이벤트나 조건에 대응하기 위해 호출하는 함수이다.
설명이 복잡해 보여서 Zhihu에서 더 좋은 설명을 찾았습니다
물건을 사러 가게에 갔는데, 사고 싶은 물건이 품절이 되어 점원에게 전화번호를 남겨두고 며칠 뒤 그 가게에 재고가 있으면 점원이 전화를 걸어옵니다. 전화를 받고 물건을 찾으러 가게에 갔습니다. 이 예에서는 전화번호를 콜백 함수라고 합니다. 매장 직원에게 전화번호를 남겨두면 나중에 매장에 상품이 있을 때 콜백과 관련된 이벤트라고 합니다. 매장 직원이 전화를 하는 것을 콜백 함수라고 합니다. 상품을 픽업하기 위해 매장에 갔을 때 콜백 이벤트에 응답한다고 합니다. 답변을 마쳤습니다.
자바스크립트:
함수 A는 매개변수(함수 참조)로 다른 함수 B에 전달되고, 이 함수 B는 함수 A를 실행합니다. 함수 A가 콜백 함수라고 가정해 보겠습니다. 이름(함수 표현식)이 없으면 익명 콜백 함수라고 합니다.
실제로 함수는 매개변수로 전달됩니다.
Javscript 콜백
위의 복잡한 설명은 휴지통에 던져버리고~ 콜백이 무엇인지 알아보세요
콜백이란
jQuery에서 hide 메소드는 다음과 같습니다
$(selector).hide(속도,콜백)
이용시
$('#element').hide(1000, function() {
// 콜백 함수
});
그 안에 간단한 함수만 작성하면 됩니다
$('#element').hide(1000, function() {
console.log('숨기기');
});
여기에는 작은 참고 사항이 있습니다. 콜백 함수는 현재 애니메이션이 100% 완료된 후에 실행됩니다. 그러면 실제 현상을 볼 수 있습니다. 요소의 ID를 가진 요소가 숨겨지면 콘솔에 Hide가 출력됩니다.
은 다음을 의미합니다.
콜백은 실제로 함수가 실행된 후 현재 실행되는 함수가 소위 콜백 함수라는 뜻입니다.
콜백 기능
일반적으로 함수는 순서대로 실행되지만 Javascript는 이벤트 중심 언어입니다.
함수 hello(){
console.log('hello');
}
함수 세계(){
console.log('세계');
}
안녕하세요();
세계();
따라서 일반적인 상황에서는 순서대로 실행되지만, 월드 이벤트 실행 시간이 상대적으로 길어지는 경우가 있습니다.
함수 hello(){
setTimeout(함수(){
console.log( '안녕하세요' );
}, 1000 );
}
함수 세계(){
console.log('세계');
}
안녕하세요();
세계();
그러면 지금은 그렇지 않습니다. 이때 world가 출력되고 그 다음에는 hello가 출력되므로 콜백이 필요합니다.
콜백 인스턴스
간단한 예시는 다음과 같습니다
함수 add_callback(p1, p2 ,콜백) {
var my_number = p1 p2;
콜백(my_number);
}
add_callback(5, 15, 함수(숫자){
console.log("call " num);
});
예제에는 세 개의 매개변수를 받는 add_callback 함수가 있습니다. 처음 두 개는 추가할 두 개의 매개변수이고 세 번째 매개변수는 콜백 함수입니다. 함수가 실행되면 덧셈 결과가 반환되고 'call 20'이 콘솔에 출력된다.