JS 약속 심부름

나는 내 게시물에서 오픈 소스에 계속 기여할 것을 약속했고, 최근에 배운 javascript PROMISE라는 개념에 대해 글을 쓰면서 그 약속을 지키기로 결정했습니다!



그래서 나에게는 길고 스트레스가 많은 하루였고, 밖도 제법 더웠다. 나는 시원한 음료가 필요했지만 하던 일을 떠날 수 없었기 때문에 일을 계속하는 동안 시원한 음료를 사주는 심부름을 동생에게 부탁했습니다. 하루가 끝날 무렵 나는 이전에 Promise 개념을 연습했다는 것을 깨달았습니다.

심부름의 고장



이것은 심부름 중에 일어난 모든 일에 대한 분석입니다.
  • 나는 형에게 전화를 걸어 음료수를 얻는 데 도움을 요청했습니다.
  • 그가 심부름을 하는 동안 나는 계속 일했다.
  • 나는 그가 차가운 음료수를 가지고 돌아올지 말지를 예상하고 있었다.
  • 위의 3번 항목에 대한 내 반응은 무엇입니까?

  • 심부름과 JS 약속



    심부름은 javascript Promise의 작동 방식과 관련이 있습니다.

    약속의 창조



    위의 처음 3개 사항은 아래 코드 블록을 사용하여 Promise가 작동하는 방식과 연결됩니다.

    const coldDrink = true;
    
    const brother = new Promise((resolve, reject) => {
      if (coldDrink) {
        const coldDrinkBought = 'I was able to get the cold drink';
        resolve(coldDrinkBought);
      } else {
        const coldDrinkNotBought = 'I was unable to get the cold drink';
        reject(coldDrinkNotBought);
      }
    });
    


    Promise를 만들거나 형제를 약속하는 것과 유사하게 형제에게 전화해야 한다고 언급했습니다. 나는 이 코드 줄const brother = new Promise((resolve, reject) => {...};에 표시된 차가운 음료수를 얻을 수 있도록 형제에게 전화하여 약속을 만들었습니다.
    Promise의 비동기적 특성을 설명하면서 형이 심부름을 하는 동안에도 저는 일을 멈추지 않았습니다.
    아직 일하고 있는 동안 나는 동생이 술을 구할 수 있는지 없는지 두 가지 결과를 기대하고 있었습니다. 이 두 가지 가능성은 Promise 내 함수의 매개변수에 의해 처리됩니다. 이는 resolve(차가운 음료를 받는 것을 처리함) 및 reject(차가운 음료를 받지 않는 것을 처리함)입니다.

    약속의 소비



    이 부분은 동생에게서 차가운 음료수를 받을 수 있는 두 가지 가능성에 대한 나의 반응을 설명합니다.

     brother()
        .then(iGotTheColdDrink => {
          console.log(iGotTheColdDrink);
        })
        .catch(iDidNotGetTheColdDrink => {
          console.log(iDidNotGetTheColdDrink);
        });
    


    동생이 찬 음료수를 받았다면 그쪽에서 해결하고 .then 방식으로 음료수를 받을 수 있습니다. 그가 음료수를 받을 수 없어 거부되었음을 나타내는 경우 .catch 방법을 사용하여 그에게서 돈을 돌려받을 수 있습니다. 이 시점에서 나는 술을 마실 것이라고 생각합니다.



    요약


  • .then 메소드는 약속의 해결 응답 결과를 처리합니다.
  • .catch 메소드는 Promise의 거부 응답 결과를 처리합니다.
  • 이것은 몇 가지 개념을 설명하기 위한 그림이며, 자세한 내용은 node.js 공식 사이트를 확인하십시오.

  • 제 그림으로 Promise의 기본 사항을 설명하는 Promise를 이행했으면 합니다. 다음에 만나요(말장난 의도).

    좋은 웹페이지 즐겨찾기