> 웹 프론트엔드 > JS 튜토리얼 > js 콜백 함수란 무엇입니까?

js 콜백 함수란 무엇입니까?

anonymity
풀어 주다: 2019-05-29 09:32:15
원래의
10941명이 탐색했습니다.

자바스크립트에서 함수는 일급 객체입니다. 즉, 일급 관리 기능을 통해 함수를 객체처럼 사용할 수 있다는 뜻입니다. 함수는 실제로 객체이기 때문에 변수에 "저장"되고, 함수 매개변수로 전달되고, 함수 내에서 생성되고, 함수에서 반환될 수 있습니다.

js 콜백 함수란 무엇입니까?

함수는 일급 객체이므로 자바스크립트에서는 콜백 함수를 사용할 수 있습니다. 다음 글에서는 콜백 함수에 대해 모두 알아 보겠습니다. 콜백 함수는 아마도 Javascript에서 가장 많이 사용되는 함수형 프로그래밍 기술일 것입니다. 문자 그대로는 작은 Javascript 또는 jQuery 코드처럼 보이지만 여전히 많은 개발자에게는 미스터리입니다. 이 글을 읽고 나면 콜백 함수를 사용하는 방법을 이해할 수 있습니다.

콜백 함수는 함수형 프로그래밍이라는 프로그래밍 패러다임에서 파생된 개념입니다. 간단히 말해서, 함수형 프로그래밍은 함수를 변수로 사용하는 것입니다. 함수형 프로그래밍은 과거에도 지금도 널리 사용되지는 않습니다. 예전에는 특별히 교육을 받은 마스터 수준 프로그래머를 위한 비밀 기술로 여겨졌습니다.

다행히 함수 프로그래밍 기법에 대한 설명이 이제 나와 같은 일반인도 쉽게 사용할 수 있게 설명이 되었습니다. 함수형 프로그래밍의 주요 트릭 중 하나는 콜백 함수입니다. 다음 내용에서는 콜백 함수를 구현하는 것이 실제로 매개변수를 일반 함수에 전달하는 것만큼 간단하다는 것을 알 수 있습니다. 이 기술은 너무 간단해서 왜 고급 Javascript 기술에 대한 장에 자주 포함되는지 궁금합니다.

콜백 또는 고차 함수가 무엇인지 설명

고차 함수라고도 알려진 콜백 함수는 함수입니다. 매개변수로 사용되는 함수가 다른 함수에 전달되면(여기서는 다른 함수를 "otherFunction"이라고 함) 콜백 함수가 otherFunction에서 호출됩니다. 콜백 함수는 본질적으로 프로그래밍 패턴(일반적인 문제에 대해 만들어진 솔루션)이므로 콜백 함수를 사용하는 것을 콜백 패턴이라고도 합니다.

다음은 jQuery에서 콜백 함수를 사용하는 간단하고 일반적인 예입니다.

/注意到click方法中是一个函数而不是一个变量
//它就是回调函数
$("#btn_1").click(function() {
  alert("Btn 1 Clicked");
});
로그인 후 복사

이전 예에서 볼 수 있듯이 함수를 Click 메서드에 매개 변수로 전달합니다. . click 메소드는 우리가 전달한 함수를 호출(또는 실행)합니다. 이는 Javascript에서 콜백 함수의 일반적인 사용 방식이며 jQuery에서도 널리 사용됩니다.

다음은 Javascript의 일반적인 콜백 함수의 또 다른 예입니다.

var friends = ["Mike", "Stacy", "Andy", "Rick"];
friends.forEach(function (eachName, index){
console.log(index + 1 + ". " + eachName); // 1. Mike, 2. Stacy, 3. Andy, 4. Rick
});
로그인 후 복사

다시 한 번, 다음과 같이 전달된 익명 함수(이름 없는 함수)에 대해 이야기하고 있다는 점에 유의하세요. forEach 메소드에 대한 매개변수.

지금까지 우리는 익명 함수를 다른 함수나 메서드에 인수로 전달했습니다. 보다 실용적인 예제를 살펴보고 자체 콜백 함수를 작성하기 전에 콜백 함수의 작동 방식을 이해해 보겠습니다.

위 내용은 js 콜백 함수란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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