Javascript_javascript 기술의 콜백 메소드에 대한 간략한 분석

WBOY
풀어 주다: 2016-05-16 16:09:21
원래의
1254명이 탐색했습니다.

콜백이란

코드 복사 코드는 다음과 같습니다.

콜백 함수는 함수 포인터를 통해 호출되는 함수입니다. 함수 포인터(주소)를 다른 함수에 매개변수로 전달하고 이 포인터가 가리키는 함수를 호출하는 데 사용되는 경우 이를 콜백 함수라고 합니다. 콜백 함수는 함수 구현자가 직접 호출하는 것이 아니라 특정 이벤트나 조건이 발생했을 때 상대방이 해당 이벤트나 조건에 대응하기 위해 호출하는 함수이다.

설명이 복잡해 보여서 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'이 콘솔에 출력된다.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿