Skip to content
This repository has been archived by the owner on Sep 8, 2021. It is now read-only.

Latest commit

 

History

History
40 lines (27 loc) · 1.79 KB

ex01.md

File metadata and controls

40 lines (27 loc) · 1.79 KB

Exercise 01 - Callback Hell 🔥

조건명 조건
제출할 폴더 이름 : ex01/
제출할 파일 이름 : recipe_callback.js
사용 가능한 외부 모듈 : 없음
참고사항 : 없음

42seoul 에서 공부를 하고 있는 sunpark 은 최근 새로나온 전자기기를 구입하기 위해 개포시장을 전전하며 알바를 구하기 시작하였다.

그 결과 개포시장의 명물 꽈배기 집에 알바로 들어가게 되었다!

sunpark 은 꽈배기를 만드는 업무에 배정을 받게 되었는데, 꽈배기를 만들려면 다음 아래와 같은 작업을 진행하게 된다.

해당 작업은 아래와 같은 순서와 시간이 걸리게 된다.

  1. 반죽 만들기 - 3초
  2. 1차 발효 - 5초
  3. 성형 하기 - 4.2초
  4. 2차 발효 - 2초
  5. 튀기기 - 5초

각 작업은 일정 확률로 실패를 하게 되는데, 그 때에는 다시 해당 작업 부터 다시 해야 한다.

sunpark 은 위와 같은 작업을 할 수 있는 js 코드를 구현할려고 한다, sunpark 을 도와주자!!!!

  • 각 작업은 setTimeout 함수를 이용하여 구현해야 한다.

  • 매 단계별 console.log 를 이용하여 단계명을 출력해야한다. (이때 실패하였다는 내용도 출력을 해주어야 한다.)

  • 각 작업은 매번 아래의 함수를 호출하여 확률적으로 실패하도록 설계해야 한다.

    function randomFail() {
      if (Math.random() < 0.2) throw "제작 실패..!(월급이 삭감되었다 ㅜㅜ)";
    }
  • Promise, <Promise>.then(), <Promise>.catch(), async, await 키워드, 함수를 사용할 수 없다.