getAllPost() ํจ์ ๊ด๋ จ ์ง๋ฌธ ๋๋ฆฝ๋๋ค.
์ ๋ ๊ถ๊ธํด์ ์ฐพ์๋ณด๊ณ ํน์๋ ๋์์ด ๋ ๊น ํด์ ์ถ๊ฐ๋ก ๋จ๊ฒจ๋ด
๋๋ค.์๋ฐ์คํฌ๋ฆฝํธ์ ํ์
์คํฌ๋ฆฝํธ์์, ๋น๋๊ธฐ ์์
์ ์ฒ๋ฆฌํ ๋, await์ Promise๊ฐ ํด๊ฒฐ๋ ๋๊น์ง ๊ธฐ๋ค๋ ธ๋ค๊ฐ ๊ทธ ๋ค์ ์ฝ๋ ์ค์ ์คํ์ ๊ณ์ํฉ๋๋ค. ํ์ง๋ง, await์ ์ฌ์ฉํ ํ์์ฑ์ ์ฝ๋ ์คํ์ ๋งฅ๋ฝ๊ณผ ๋ฌ์ฑํ๋ ค๋ ๋ชฉํ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. ํ๋ก๋ฏธ์ค ์ง์ ๋ฐํ๋น๋๊ธฐ ํจ์์์ ํ๋ก๋ฏธ์ค๋ฅผ ์ง์ ๋ฐํํ๋ฉด์ ๊ทธ ํจ์ ๋ด์์ ํด๊ฒฐ๋ ํ์ ์์ด ๋ฐํํ๋ค๋ฉด, await์ ์ฌ์ฉํ ํ์๊ฐ ์์ต๋๋ค. ์ด๋ ๋น๋๊ธฐ ํจ์ ์์ฒด๊ฐ ํ๋ก๋ฏธ์ค๋ฅผ ๋ฐํํ๊ณ , ๋ค๋ฅธ ํ๋ก๋ฏธ์ค๋ฅผ ์ง์ ๋ฐํํจ์ผ๋ก์จ ๋ณธ์ง์ ์ผ๋ก ๊ทธ๋ค์ ์ฐ๊ฒฐํ๋ ๊ฒ์
๋๋ค. ์ด๋ ํจ์์ ํธ์ถ์๊ฐ ๊ทธ ํ๋ก๋ฏธ์ค์ ํด๊ฒฐ์ด๋ ๊ฑฐ๋ถ๋ฅผ ์ฒ๋ฆฌํ๋๋ก ์์ํ๊ณ ์ถ์ ๋ ์ ์ฉํฉ๋๋ค.async function fetchData() { return fetch('https://api.example.com/data'); // ํ๋ก๋ฏธ์ค๋ฅผ ์ง์ ๋ฐํ } // ํธ์ถ์๊ฐ ํ๋ก๋ฏธ์ค๋ฅผ ์ฒ๋ฆฌํจ fetchData().then(data => console.log(data)).catch(error => console.error(error)); ํด๊ฒฐ๋ ๊ฐ ์ฌ์ฉ ํ์ํจ์ ๋ด์์ ๋ฐํํ๊ธฐ ์ ์ ํ๋ก๋ฏธ์ค์ ํด๊ฒฐ๋ ๊ฐ์ ์ฌ์ฉํด์ผ ํ๋ค๋ฉด, ํ๋ก๋ฏธ์ค๊ฐ ํด๊ฒฐ๋ ๋๊น์ง ์คํ์ ์ผ์ ์ค์งํ๊ธฐ ์ํด await์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.async function fetchData() { const response = await fetch('https://api.example.com/data'); // ํ๋ก๋ฏธ์ค๊ฐ ํด๊ฒฐ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆผ const data = await response.json(); // ํด๊ฒฐ๋ ๊ฐ์ ์ฌ์ฉ return data; // ๋ฐ์ดํฐ ๋ฐํ } // ํธ์ถ์๊ฐ ํ๋ก๋ฏธ์ค๋ฅผ ์ฒ๋ฆฌํจ fetchData().then(data => console.log(data)).catch(error => console.error(error));์์ธ ์ฒ๋ฆฌtry-catch ๋ธ๋ก ๋ด์์ await์ ์ฌ์ฉํ ๋, ํ๋ก๋ฏธ์ค ์คํ ์ค ๋ฐ์ํ๋ ๋ชจ๋ ์๋ฌ๋ฅผ ์ก์ ์ ์์ต๋๋ค. await ์์ด ์ง์ ํ๋ก๋ฏธ์ค๋ฅผ ๋ฐํํ๋ค๋ฉด, ์๋ฌ ์ฒ๋ฆฌ๋ฅผ ํธ์ถ์์๊ฒ ์์ํ๊ฒ ๋๋ฉฐ, ํธ์ถ์๋ .catch() ๋๋ ๋น๋๊ธฐ ํจ์ ๋ด์ try-catch ๋ธ๋ก์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.์์ฝ- `await` ์ฌ์ฉ ๋ถํ์: ๋น๋๊ธฐ ํจ์์์ ํด๊ฒฐ๋ ๊ฐ์ ์กฐ์ํ๊ฑฐ๋ ์ฌ์ฉํ ํ์ ์์ด ์ง์ ํ๋ก๋ฏธ์ค๋ฅผ ๋ฐํํ ๋.- `await` ์ฌ์ฉ ํ์: ํ๋ก๋ฏธ์ค์ ํด๊ฒฐ๋ ๊ฐ์ ์ฌ์ฉํ๊ฑฐ๋ ํจ์ ๋ด์์ ์๋ฌ ์ฒ๋ฆฌ๋ฅผ ์ํํด์ผ ํ ๋.await์ ์ฌ์ฉํ ์ง ์ฌ๋ถ๋ ์ฝ๋์ ๊ตฌ์ฒด์ ์ธ ์๊ตฌ์ฌํญ๊ณผ ํ๋ก๋ฏธ์ค ๋ฐ ๊ทธ ํด๊ฒฐ์ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๊ณ ์ถ์์ง์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.