1. ํ๋ฆฌ๋ ๋๋ง(Pre-rendering)ํ๋ฆฌ๋ ๋๋ง์ ์๋ฒ๊ฐ ํ์ด์ง๋ฅผ ์ฌ์ฉ์๊ฐ ์์ฒญํ๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ๋ ๋๋งํด์ ์ค๋นํด๋๋ ๋ฐฉ์์
๋๋ค. ํ์ด์ง๋ฅผ ๋ฏธ๋ฆฌ ์์ฑํ์ฌ ์บ์ฑํด ๋๋ ๊ฒ์ด ํน์ง์
๋๋ค.ํน์ง์ ์ ์์ฑ: ๋น๋ํ ๋ ๋ ๋๋ง์๋ฒ์ฌ์ด๋ ๋ ๋๋ง: ๋ฆฌํ์คํธ๊ฐ ๋ค์ด์ค๋ฉด ๋ ๋๋ง์ฅ์ : ๋น ๋ฅธ ๋ก๋ฉ ์๋ (ํ์ด์ง๊ฐ ๋ฏธ๋ฆฌ ์ค๋น๋์ด ์์), SEO์ ์ ๋ฆฌํ๋ฆฌ ๋ ๋๋ง์ ์ฌ์ฉํ๋ฉด ํ๋ฆฌํ์น๋ณด๋ค ํ์ ์๊ฐ์ด ๋นจ๋ฆฌ์ง๊ณ ๋ ๋ง์ ๋ฆฌ์์ค๋ฅผ ํ์๋ก ํ๋ ๋์ ์ฌ์ฉ์ ๊ฒฝํ์ด ํฅ์๋ฉ๋๋ค.๋จ์ : ๋์ ์ธ ์ปจํ
์ธ ์ ๋ํด ์ ์ฉํ๊ธฐ ์ด๋ ต๊ณ , ๋ฏธ๋ฆฌ ์ค๋น๋ ํ์ด์ง๋ง ์ ๊ณต ๊ฐ๋ฅํ๋ฆฌ๋ ๋๋ง์ด ์ ํฉํ ๊ฒฝ์ฐ์์ฃผ ๋ณ๊ฒฝ๋์ง ์๋ ์ฝํ
์ธ : ์๋ฅผ ๋ค์ด ๋ธ๋ก๊ทธ, ํฌํธํด๋ฆฌ์ค ์ฌ์ดํธ ๋ฑ ์์ฃผ ์
๋ฐ์ดํธ๋์ง ์๋ ์ฝํ
์ธ ๊ฐ ๋ง์ ๋.ex) ๋ธ๋ก๊ทธ, ํฌํธํด๋ฆฌ์ค ์ฌ์ดํธSEO๊ฐ ์ค์ํ ํ์ด..
1. PromisePromise๋ ๋น๋๊ธฐ ์์
์ ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋ด๋ ๊ฐ์ฒด์
๋๋ค. ๋น๋๊ธฐ ์์
์ด ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋๋ฉด ๊ฒฐ๊ณผ๊ฐ์ ์ ๊ณตํ๊ฑฐ๋, ์คํจํ๋ฉด ์๋ฌ๋ฅผ ๋ฐํํฉ๋๋ค.์ฃผ์ ํน์ง์ํ: Pending (๋๊ธฐ), Fulfilled (์ดํ), Rejected (๊ฑฐ๋ถ) ์ธ ๊ฐ์ง ์ํ๋ฅผ ๊ฐ์ง๋๋ค.๋ฉ์๋: then, catch, finally ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.const fetchData = () => { return new Promise((resolve, reject) => { setTimeout(() => { resolve("๋ฐ์ดํฐ ์์ ์๋ฃ"); }, 1000); });};fetchData().then(result => { console.log(result); // "๋ฐ์ดํฐ ..
1๏ธโฃ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฝ๋ฐฑ(์ฝ๋ฐฑ ํจ์)์ด ๋ฌด์์ธ์ง ์ค๋ช
ํด ์ฃผ์ธ์.๐ท๏ธ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฝ๋ฐฑ ํจ์๋ ๋ค๋ฅธ ํจ์์ ์ธ์๋ก ์ ๋ฌ๋์ด, ํด๋น ํจ์๊ฐ ์์
์ ์๋ฃํ ํ ํธ์ถ๋๋ "๋์ค์ ํธ์ถ๋ ํจ์"์
๋๋ค.// ๊ฐ ๋ฐฐ์ด์ ์์์ ์ฝ๋ฐฑ ํจ์๋ฅผ ํธ์ถconst numbers = [1,2,3,4,5];numbers.forEach((number)=> console.log(number));์ฝ๋ฐฑ ํจ์์ ๋ฌธ์ ์ ๋ง์ ์ฝ๋ฐฑ ํจ์๊ฐ ์ค์ฒฉ๋๋ฉด ์ฝ๋๊ฐ ๋ณต์กํ๊ณ ๊ฐ๋
์ฑ์ด ๋จ์ด์ง๋๋ค. ์ด๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด 'Promise', 'async/await'๊ณผ ๊ฐ์ ๋น๋๊ธฐ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ด ์ฌ์ฉ๋ฉ๋๋ค.2๏ธโฃ ๋ฐฐ์ด์ ์๋ filter, map๊ณผ ๊ฐ์ ๋ฉ์๋์ ์๋ ์ฝ๋ฐฑ๊ณผ setTimeout์ ์๋ ์ฝ๋ฐฑ์ ์ฐจ์ด์ ๋ํด ์ค๋ช
ํด ์ฃผ์ธ์.๐ท๏ธ filter๋ ..