async2 [JavaScript] async / await 2 ์๋ฌ ์ฒ๋ฆฌ ์๋ฌ๋ ํธ์ถ์(caller) ๋ฐฉํฅ์ผ๋ก ์ ํ ์ฝ ์คํ์ ์๋ ๋ฐฉํฅ(์คํ ์ค์ธ ์คํ ์ปจํ ์คํธ๊ฐ ํธ์๋๊ธฐ ์ง์ ์ ํธ์๋ ์คํ ์ปจํ ์คํธ ๋ฐฉํฅ)์ผ๋ก ์ ํ ํ์ง๋ง, ๋น๋๊ธฐ ํจ์์ ์ฝ๋ฐฑ ํจ์๋ฅผ ํธ์ถํ ๊ฒ์ ๋น๋๊ธฐ ํจ์๊ฐ ์๋๊ธฐ ๋๋ฌธ์ try…catch๋ฌธ์ ์ฌ์ฉํด ์๋ฌ๋ฅผ ์บ์นํ ์ ์์ try{ setTimeout(()=>{ throw new Error('Error!') },1000) } catch(e) [ cosole.log('์บ์นํ ์๋ฌ',e) } async/await์์๋ ์๋ฌ ์ฒ๋ฆฌ์ try...catch ๋ฌธ์ ์ฌ์ฉํ ์ ์์. ์ฝ๋ฐฑ ํจ์๋ฅผ ์ธ์๋ก ์ ๋ฌ๋ฐ๋ ๋น๋๊ธฐ ํจ์์๋ ๋ฌ๋ฆฌ ํ๋ก๋ฏธ์ค๋ฅผ ๋ฐํํ๋ ๋น๋๊ธฐ ํจ์๋ ๋ช ์์ ์ผ๋ก ํธ์ถ ํ ์ ์๊ธฐ ๋๋ฌธ์ ํธ์ถ์๊ฐ ๋ช ํ. const fetch = require(.. 2023. 1. 26. [JavaScript] async / await 1 async / await ์ ์ฌ์ฉํ ๊น? Promise ์ฒด์ด๋์ ์ฝ๋ฐฑ ์ง์ฅ์ ๋ฒ์ด๋๊ฒ ํ์ง๋ง, Promise ์ฒด์ด๋ ๋ํ ๊ธธ์ด์ง ๊ฒฝ์ฐ ์ฌ์ ํ ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง ES2017์ ์ฒ์์ ๋ฑ์ฅํ async, await๋ syntactic sugar๋ก Promise ์ฌ์ฉ์ ์ข ๋ ํธ๋ฆฌํ๊ณ ์ธ๋ จ๋๊ฒ ํธ๋ฆฌํ๊ฒ ํ ์ ์๋๋ก ์ฒ๋ฆฌ async ํค์๋๋ ํจ์ ์์ ๋ถ์ ํจ์ ์์ async ๋ถ๊ฒ ๋๋ฉด promise๋ฅผ ๋ฐํํ๋ค๋ ์๋ฏธ async/ await ํ๋ก๋ฏธ์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋์ ํ๋ก๋ฏธ์ค์ then/catch/finally ํ์ ์ฒ๋ฆฌ ๋ฉ์๋์ ์ฝ๋ฐฑ ํจ์๋ฅผ ์ ๋ฌํด ๋น๋๊ธฐ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ํ์ ์ฒ๋ฆฌํ ํ์ ์์ด ๋๊ธฐ ์ฒ๋ฆฌ์ฒ๋ผ ํ๋ก๋ฏธ์ค๋ฅผ ์ฌ์ฉ asyncํจ์ await ํค์๋๋ ๋ฐ๋์ async ํจ์ ๋ด๋ถ์์ ์ฌ์ฉ async ํจ์๋ .. 2023. 1. 25. ์ด์ 1 ๋ค์