nodejs에서 wait는 비차단 방식으로 실행을 일시 중지하고 약속의 비동기 요청을 기다리고 비동기 메서드가 실행을 완료할 때까지 기다리는 데 사용됩니다. ; 약속이 반환됩니다. 거부가 실패하면 거부 값이 발생하고 "try/catch"로 캡처할 수 있습니다.
이 문서의 운영 환경: Windows 10 시스템, nodejs 버전 12.19.0, Dell G3 컴퓨터.
Async/await 사용법은 Node.js 7 night에서 도입되었지만 공식적으로 async/await 기능을 활성화하는 것은 Node.js 8과 Javascript V8에서만 가능합니다.
비동기/대기란 무엇입니까? 과거에 Promise를 사용하여 비동기 작업을 구현하는 방법 다음 사례에서는 Promise 및 Fetch API를 사용하여 데이터를 가져오는 방법을 보여줍니다.
function getTrace () { return fetch('https://www.jdon.com', { method: 'get' }) } getTrace() .then() .catch()async/await를 사용하면 비차단 방식으로 실행을 일시 중지하고 결과가 반환될 때까지 기다릴 수 있습니다. Promise가 실패한 거부를 반환하면 거부 값이 발생하고 try/catch로 캡처할 수 있습니다. 위의 경우는 async/await를 사용하여 다음과 같이 작성할 수 있습니다.
function async getTrace () { let pageContenttry { pageContent = wait fetch('https://www.jdon.com', { method: 'get' }) } catch (ex) { console.error(ex) } return pageContent} getTrace() .then()Node.js에서 async/await를 사용하고, settimeout을 사용하여 함수 실행을 지연시키고, async/await 캡슐화를 사용하는 경우를 살펴보겠습니다.
// app.jsconst timeout = function (delay) { return new Promise((resolve, Reject) => { setTimeout(() => { 해결() }, 지연) }) } 비동기 함수 타이머() { console.log ('타이머 시작됨') wait Promise.resolve(timeout(100)) console.log('타이머 완료됨') } 타이머()app.js 파일을 만들고 다음을 실행합니다.
노드 app.js
실행할 수 없다면 nodejs가 nightly 버전이고 공식적으로 async/await를 지원하지 않는 것일 수 있습니다. 명령줄은 다음과 같아야 합니다.
노드 --harmony-async-await app.js
추천 학습: "nodejs 비디오 튜토리얼"
이상은 nodejs에서 Wait를 사용하는 방법에 대한 자세한 내용입니다. 자세한 내용은 이 사이트의 다른 관련 기사를 참고하세요!