>웹 프론트엔드 >JS 튜토리얼 >JavaScript의 비동기 콜백 함수에서 값을 얻는 방법은 무엇입니까?

JavaScript의 비동기 콜백 함수에서 값을 얻는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-29 10:40:11504검색

How to Get Values from Asynchronous Callback Functions in JavaScript?

JavaScript에서 비동기 콜백 함수를 처리하는 방법

geocoder.geocode 함수에 사용되는 것과 같은 비동기 콜백을 사용하면 그로부터 값을 검색하는 것이 어렵습니다. 이 문제는 "비동기 콜백 함수에서 값을 반환하는 방법"이라는 제목에서 강조되어 있습니다.

비동기 콜백 이해

비동기 콜백은 일정 시간이 지난 후 실행되는 함수입니다. 불확실한 시간. 일반적으로 네트워크 요청과 같이 즉시 완료할 수 없는 작업을 수행할 때 사용됩니다. 비동기식 특성으로 인해 값을 직접 반환하는 데 사용할 수 없습니다.

해결책: 콜백 사용

비동기 콜백에서 값을 검색하려면 다음 방법을 사용하세요. 콜백 함수를 비동기 함수에 전달합니다. 이 콜백 함수는 비동기 작업이 완료되면 실행되며 원하는 값을 매개변수로 받습니다.

예:

제공된 스크립트에서 다음 코드는 geocoder.geocode에서 원하는 값을 검색하는 데 사용할 수 있습니다. 함수:

function foo(address, callback) {
  geocoder.geocode({ 'address': address }, function (results, status) {
    callback(results[0].geometry.location);
  });
}

foo("address", function (location) {
  alert(location); // This is where you receive the value
});

참고:

이 솔루션은 비동기 콜백 함수에서만 작동한다는 점에 유의하는 것이 중요합니다. 동기 함수의 경우 값을 직접 반환할 수 있습니다.

위 내용은 JavaScript의 비동기 콜백 함수에서 값을 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.