JAVASCRIPT - 2021. 6. 3. 자바스크립트 fetch, then, catch [Promise] 응용하고 - 👩💻 자바스크립트 fetch, then, catch [Promise] 응용하고 안녕하세요 TriplexLab입니다. 오늘은 지난 시간에 했던 fetch함수 관해서 응용해보도록 하겠습니다 :) 하단에 지난시간에 다루었던 fetch함수 관한 글 링크 남겨 보겠습니다. 관심 있는 분들은 보세요~ 🙋♂️ 자바스크립트 fetch, then, catch [Promise] 이해하기 자바스크립트 fetch, then, catch [Promise] 이해하기 안녕하세요 TriplexLab입니다. 오늘은 Promise관해서 살펴보도록 하겠습니다. fetch함수의 동작 흐름 해석하기 fetch함수는 Promise객체를 리턴합니다. 나중. triplexlab.tistory.com <script> (function(){ function pick(menus) { console.log('Pick random menu!'); const p = new Promise((resolve, reject) => { if (menus.length === 0) { reject(new Error('Need Candidates')); } else { setTimeout(() => { const randomIdx = Math.floor(Math.random() * menus.length); // 배열에 있는 인덱스 번호를 랜덤으로 뽑아 randomIdx변수에 할당 합니다. const selectedMenu = menus[randomIdx]; resolve(selectedMenu); // fulfilled 상태일때 인자로 위에서 뽑은 랜덤의 값을 인자로 넣습니다. }, 1000); // 시간이 걸리는 걸 시뮬레이션하기 위한 1초입니다. } }); return p; } function getRandomMenu() { return fetch('./test.json') //데이터가 서버에 있을경우 url정보를 넣어주세요. .then((response) => response.json()) .then((result) => { const menus = result; return pick(menus); // ! random pick function }); } getRandomMenu() .then((menu) => { console.log(`Today's lunch is ${menu.name} ~`); }) .catch((error) => { console.log(error.message); }) .finally(() => { console.log('Random Menu candidates change everyday'); }); })(); </script> 위에에 작성한 코드는 렌덤으로 메뉴를 선택하는 코드입니다.다운받아서 test 해보세요 :) 랜덤 선택기.zip 0.00MB 공유하기 게시글 관리 트리플랩 | TriplexLab 저작자표시 Contents 커피 한 잔 선물하기 당신이 좋아할만한 콘텐츠 점심 메뉴를 내맘대로 정렬하기 2021.06.23 사용자 시간 지정(예약 기능) 2021.06.05 자바스크립트 fetch, then, catch [Promise] 이해하기 2021.05.31 이벤트 위임(Event Delegation) 2021.05.20 댓글 2 + 이전 댓글 더보기