JavaScript에서 약속을 구현하는 방법?



JavaScript의 약속은 기본적으로 비동기 작업을 처리하는 데 사용됩니다. 이 기사는 개념을 자세히 탐색하는 데 도움이됩니다.

약속 기본적으로 작업 비동기 작업을 처리하는 데 사용됩니다. Promise는 미래에 해결 된 값 또는 오류와 같은 단일 값을 생성 할 수있는 객체입니다.

이 기사에서는 다음 사항을 다룰 것입니다.





JavaScript의 약속에 대한이 기사를 시작하겠습니다.

중요성:

처리해야 할 비동기 작업이 여러 개있을 때 약속이 유용합니다. JavaScript에 promise가 도입되기 전에는 비동기 작업을 처리하는 데 사용되는 이벤트와 콜백 함수가있었습니다. 이벤트는 비동기 작업의 경우 그다지 유용하지 않기 때문에 선호되지 않습니다. 콜백에 와서 여러 번 사용하면 누구나 코드를 이해하기가 매우 어려울 정도로 엉망이 될 것입니다.
따라서 Promise는 가장 간단한 방식으로 비동기 작업을 처리하는 모든 코더의 첫 번째 선택입니다. 콜백 및 이벤트보다 작업을 쉽게 처리 할 수있는 고급 기능이 있습니다.



  • Promises는 코드를 읽기 쉽게 만들어 개발의 나중 단계에서 코더가 편집 할 수 있음을 의미합니다.
  • 콜백 및 이벤트에 비해 비동기 작업 전반에 걸쳐 더 나은 처리가 있습니다.
  • 고급 오류 처리도 중요한 기능으로 간주됩니다.
  • 비동기식에서 훨씬 더 나은 제어 정의 흐름이 있습니다.

JavaScript의 약속에 대한이 기사로 이동

상태 유형 :

이행 됨 : 성공한 약속과 관련이 있습니다.
거부 됨 : 거부 된 약속과 관련이 있습니다.
보류 중 : 보류중인 약속, 즉 거부되거나 수락되지 않은 약속과 관련됩니다.
안정된: 이행되거나 거부되는 약속과 관련됩니다.

java double to int round

JavaScript의 약속에 대한이 기사로 이동



약속의 창조

promise 생성자를 사용하여 promise를 만듭니다.

통사론:

var promise = new Promise (function (resolve, reject) {// 여기서 무언가를하십시오})

매개 변수 :
Promise 생성자는 하나의 인수 인 콜백 함수를 사용합니다. 콜백 함수에는 resolve 또는 reject라는 두 가지 인수가 있습니다. 작업은 콜백 함수 내에서 수행되며 모든 것이 잘되면 호출이 해결되고 그렇지 않으면 호출이 거부됩니다.

JavaScript의 약속에 대한이 기사로 이동

예 1 :

var promise = new Promise (function (resolve, reject) {/ * 같은 내용을 가진 const 데이터 유형의 두 변수를 선언하고 정의합니다. * / const a = '안녕하세요! 제 이름은 Yash이고 컴퓨터 과학에 관심이 있습니다.' const b = '안녕하세요! 제 이름은 Yash이고 컴퓨터 과학에 관심이 있습니다.'// 변수에 저장된 두 콘텐츠가 모두 동일한 지 확인합니다. if (a === b) {// calling resolve resolve () } else {// reject reject () 호출}}) promise. then (function () {console.log ( 'Promise Resolved !!')}). catch (function () {console.log ( 'Promise Rejected !!')})

산출:
출력-JavaScript의 약속-Edureka

JavaScript의 약속에 대한이 기사로 이동

예 2 :

var promise = new Promise (function (resolve, reject) {// 정수 값으로 두 변수 초기화 const x = 11 + 2 const y = 26/2 // 두 변수가 같은지 여부 확인 if (x === y ) {// resolve () 호출} else {// reject reject () 호출}}) promise. then (function () {console.log ( 'Promise is Resolved !!')}). catch (function () {console.log ( 'Promise is Rejected !!')})

산출:

자바 날짜 문자열

JavaScript의 약속에 대한이 기사로 이동

예 3 :

var promise = new Promise (function (resolve, reject) {const i = 'Hello'const a = 'World'// 다른 변수에 값을 저장하기 위해 두 변수 추가 수행 const j = i + a if ((i + a ) === j) {// resolve () 호출} else {// reject reject () 호출}}) promise. then (function () {console.log ( 'Promise is Resolved !!')}). catch (function () {console.log ( 'Promise is Rejected !!')})

산출:

JavaScript의 약속에 대한이 기사로 이동

약속의 소비자

두 가지 등록 기능이 있습니다.

그때()

promise가 해결되거나 거부되면 then ()이 호출됩니다.

매개 변수 :

  • promise가 해결되면 첫 번째 함수가 실행되고 결과가 수신됩니다.
  • promise가 거부되면 두 번째 기능이 실행되고 화면에 오류가 표시됩니다.

통사론:

.then (function (result) {// 성공 처리}, function (error) {// 오류 처리})

JavaScript의 약속에 대한이 기사로 이동

약속이 해결되면

// 약속 해결 var promise = new Promise (function (resolve, reject) {resolve ( '성공 메시지가 여기에 작성되었습니다!')}) promise .then (function (successMessageishere) {// 성공 처리 함수가 호출됩니다. console.log (successMessageishere)}, function (errorMessageishere) {console.log (errorMessageishere)})

산출:

JavaScript의 약속에 대한이 기사로 이동

약속이 거부되었을 때

// 약속 거부 var promise = new Promise (function (resolve, reject) {reject ( '거부 메시지가 여기에 작성되었습니다!')}) promise .then (function (successMessage) {console.log (successMessage)}, function ( errorMessage) {// 오류 핸들러 함수가 호출됩니다. console.log (errorMessage)})

산출:

JavaScript의 약속에 대한이 기사로 이동

잡기 ( )

어떤 종류의 오류가 있거나 실행 시간 동안 promise가 거부 될 때마다 catch ()가 호출됩니다.
매개 변수 :

  • catch () 메서드에서는 하나의 함수 만 매개 변수로 전달됩니다.
  • 이 함수는 오류를 처리하거나 거부를 약속하기 위해 만들어졌습니다.

통사론:

.catch (function (error) {// 처리 오류})

JavaScript의 약속에 대한이 기사로 이동

예 1 :

var promise = new Promise (function (resolve, reject) {reject ( 'Promise가 거부 됨')}) promise .then (function (success) {console.log (success)}) .catch (function (error) {// 오류 처리기 함수가 호출됩니다. console.log (error)})

산출:

JavaScript의 약속에 대한이 기사로 이동

예 2 :

var promise = new Promise (function (resolve, reject) {// 오류 메시지 throw new Error ( 'There is some error!')}) promise .then (function (success) {console.log (success)}) .catch (function (error) {// error handler function is invoked console.log (error)})

산출:

JavaScript의 약속에 대한이 기사로 이동

예 3 :

var promise = new Promise (function (resolve, reject) {// 여기에서 오류 메시지를 편집 할 수 있습니다. throw new Error ( 'some 오류가 발생했습니다!')}) promise .then (function (Thissuccess) {console.log (Thissuccess)} ) .catch (function (Thiserror) {// 오류 핸들러 함수 호출 console.log (Thiserror)})

산출:

신청:
1. 비동기 이벤트 처리.
2. 비동기 http 요청 처리.

따라서 우리는 '자바 스크립트의 약속'에 대한이 기사를 마쳤습니다. 자세한 내용은 다음을 확인하십시오. 신뢰할 수있는 온라인 학습 회사 인 Edureka에서 제공합니다. Edureka의 Java J2EE 및 SOA 교육 및 인증 과정은 Hibernate & Spring과 같은 다양한 Java 프레임 워크와 함께 핵심 및 고급 Java 개념에 대해 교육하도록 설계되었습니다.

AWS CLI를 시작하는 방법

질문이 있으십니까? 이 블로그의 댓글 섹션에 언급 해 주시면 가능한 한 빨리 답변을 드리겠습니다.