> 웹 프론트엔드 > JS 튜토리얼 > JavaScript 콜백 함수에 추가 인수를 어떻게 전달할 수 있나요?

JavaScript 콜백 함수에 추가 인수를 어떻게 전달할 수 있나요?

Linda Hamilton
풀어 주다: 2024-12-06 21:27:19
원래의
364명이 탐색했습니다.

How Can I Pass Extra Arguments to a JavaScript Callback Function?

콜백 함수에 추가 인수 전달

JavaScript에서 콜백 함수는 일반적으로 비동기 작업을 실행하는 데 사용됩니다. 하나 이상의 인수를 허용하고 작업이 완료되면 호출됩니다. 경우에 따라 콜백 함수에 추가 인수를 전달해야 하는 경우가 있습니다.

다음 예를 고려하세요.

const callWithMagic = callback => {
  const magic = getMagic();
  callback(magic);
};

const processMagic = (magic, theAnswer) => {
  someOtherMagic();
};
로그인 후 복사

여기서 callWithMagic 함수는 콜백 함수를 매개 변수로 사용하여 다음과 같이 호출합니다. Magic이라는 단일 인수. 그러나 Magic과 theAnswer라는 두 가지 인수가 필요한 processMagic 함수도 있습니다.

processMagic 함수를 callWithMagic의 인수로 전달하려면 Magic과 theAnswer를 모두 인수로 제공해야 합니다. 이를 달성하는 한 가지 방법은 래퍼 콜백 함수를 사용하는 것입니다.

callWithMagic(function(magic) {
  return processMagic(magic, 42);
});
로그인 후 복사

이 경우 래퍼 함수는 매직을 인수로 사용하고 매직과 theAnswer에 대해 하드코딩된 값 42를 사용하여 processMagic을 호출한 결과를 반환합니다. .

또는 ES6 화살표 기능을 활용하여 보다 간결하게 작성할 수 있습니다. 접근 방식:

callWithMagic(magic => processMagic(magic, 42));
로그인 후 복사

이 화살표 함수도 Magic을 인수로 사용하지만 암시적으로 processMagic 호출 ​​결과를 반환합니다.

래퍼 함수나 화살표 함수를 사용하여 콜백 함수에 대한 추가 인수를 사용하면 추가 종속성이 있는 더 복잡한 콜백을 사용할 수 있습니다.

위 내용은 JavaScript 콜백 함수에 추가 인수를 어떻게 전달할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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