JavaScript 콜백은 항상 비동기적입니까?

Patricia Arquette
풀어 주다: 2024-10-20 11:14:30
원래의
989명이 탐색했습니다.

Are JavaScript Callbacks Always Asynchronous?

모든 JavaScript 콜백은 비동기식인가요?

일반적인 믿음과는 달리 모든 JavaScript 콜백이 비동기식은 아닙니다. 예를 들어 Array#sort 및 String#replace에 사용되는 콜백은 동기적으로 실행됩니다.

비동기 콜백

비동기 콜백은 나중에 실행되어 다른 코드를 허용하는 콜백입니다. 동시에 실행합니다. 일반적으로 비동기 콜백에는 외부 리소스 요청(예: jQuery AJAX 호출)이 포함됩니다.

jQuery AJAX 호출

jQuery AJAX 함수는 다음 조건에 따라 동기식 및 비동기식일 수 있습니다. "비동기" 플래그 설정. 그러나 브라우저는 일반적으로 XMLHttpRequest 객체(jQuery AJAX에서 사용됨)에 대해 비동기 작업을 기본으로 합니다.

Node.js의 비동기성

Node.js에서 비동기성은 다음을 통해 도입됩니다. 파일 I/O, process.nextTick, setTimeout 및 setInterval과 같은 특정 기능. 이러한 함수 외부의 비동기 작업은 지원되지 않습니다.

비동기 함수 생성

ECMAScript 6 이전에는 JavaScript의 비동기 함수가 호스트 제공 함수(예: nextTick in)에 의존했습니다. Node.js, 브라우저의 setTimeout).

ECMAScript 6 Promises

ECMAScript 6에서는 비동기 프로그래밍을 위한 언어 수준 개념으로 Promise를 도입했습니다. Promise에 첨부된 콜백(then 또는 catch를 통해)은 Promise가 첨부될 때 이미 확정된 경우에도 항상 비동기식으로 호출됩니다.

따라서 비동기 콜백 실행을 보장하는 가장 좋은 방법은 직접 대신 Promise를 사용하는 것입니다. 콜백.

위 내용은 JavaScript 콜백은 항상 비동기적입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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