php ํ์ด์ง๋ฅผ ์ฌ์ฉํ๋ค๋ณด๋ฉด ๊ฐ์๊ธฐ ํ์ด์ง๊ฐ ํ์๊ฒ ๋ณํด๋ฒ๋ฆฐ์ ์ด ์์ ๊ฒ์ด๋ค. ์ด๋๊ฐ ์ด๋ป๊ฒ ์๋ชป๋๊ฒ์ธ์ง๋ ๋ชจ๋ฅด๊ณ , ๊ฐ๋ฐ์ ๋๊ตฌ์์๋ ๋์ค์ง ์๋๋ค ..์ฒ์์ ์์ฒญ ๋นํฉํ๋๋ฐ ํ์๊ฒ ๋ ํ์ด์ง ์๋จ์ ์๋์ ๊ฐ์ ์ฝ๋๋ฅผ ๋ฃ์ด์ฃผ๋ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ ์ฝ๋๊ฐ ๋ฌธ์ ์ธ์ง ํ ์ด๋ธ
ํ์ด์ง ์์ ์๋ ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ค๋ฅธ ํ์ด์ง๋ก ์ด๋์ ํ๋๋ฐ ๋ค์ ๊ธฐ์กด ํ์ด์ง๋ก ๊ฐ๊ธฐ ์ํด ๋ค๋ก๊ฐ๊ธฐ๋ฅผ ์คํํ ๊ฒฝ์ฐ, ERRCACHEMISS ๋ฐ์ ์์ดํฐ์์๋ ๋ฉ์ฉกํ๋๋ฐ ์๋๋ก์ด๋ ํฐ์์ ์น์ผ๋ก ๋ค์ด๊ฐ์ ๊ฒฝ์ฐ ์ด๋ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํด์ ์ฐพ์๋ณด๋ ์๋๋ก์ด๋ ์์ฒด์ ์น๋ทฐ e
๋ npm์ผ๋ก ๋ฆฌ์กํธ ์ค์น๋ฅผ ํ๋๋ฐ ์ด์ yarn์ ์ด์ฉํด๋ณด๋ ค ํ๋ ๋ญ๊ฐ ์ถฉ๋์ด ์ผ์ด๋๋์ง yarn์ผ๋ก ์ค์น๋ ์๋๊ณ , ์ค์น๊ฐ ์๋๋ start๋ ์๋์ด์ npm์ผ๋ก๋ง ํ๋ค๊ฐ ์ด๋ฒ์ ๋๋์ด yarn start๋ฅผ ์ฑ๊ณตํ๋ค.
๐ ๊ธฐ๊ฐ: 23/6/26 ~ 23/7/9 ๐๐ผ ์ด๋ฒ์ฃผ ๋ชฉํ ๋ฆฌ์กํธ ์๋ จ ์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐ ๐๐ผ ๊ณต๋ถํ ๋ด์ฉ ์์ฝ styled Components, hooks, Lifecycle, Dom, Virtual Dom, Redux ๊ฐ๋ตํ ๊ฐ๋ ์ตํ๊ธฐ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ
Promise๊ฐ์ฒด๋, ๋น๋๊ธฐ ์์ ์ด ๋ง์ดํ ๋ฏธ๋์ ์๋ฃ ๋๋ ์คํจ์ ๊ทธ ๊ฒฐ๊ณผ๊ฐ์ ๋ํ๋ธ๋ค.
useState๋ฅผ ํตํด ์ปดํฌ๋ํธ์์ ์์ฑํ state๋ฅผ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ก ๋ณด๋ด๊ณ ์ ํ ๋ Props๋ฅผ ํตํด์ ๋ถ๋ชจ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก ๊ทธ ๊ฐ์ ๋ณด๋ด์ค๋ค. ํ์ง๋ง props๋ก state๋ฅผ ๊ณต์ ํ๋ ๋ฐฉ๋ฒ์๋ ๋ถํธํจ ์ ์กด์ฌํ๋ค.
์ปดํฌ๋ํธ๋ ์์ฑ(mounting) -> ์ ๋ฐ์ดํธ(updating) -> ์ ๊ฑฐ(unmounting)์ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ฐ๋๋ค. ๋ฆฌ์กํธ ํด๋์ค ์ปดํฌ๋ํธ๋ ๋ผ์ดํ ์ฌ์ดํด ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ณ , ํจ์ํ ์ปดํฌ๋ํธ๋ Hook์ ์ฌ์ฉํ๋ค.
ํจ์ํ ์ปดํฌ๋ํธ์์๋ ์ํ ๊ด๋ฆฌ๋ฅผ ํ ์ ์๋ useState, ๊ทธ๋ฆฌ๊ณ ๋ ๋๋ง ์งํ ์์ ์ ์ค์ ํ๋ useEffect ๋ฑ์ ๊ธฐ๋ฅ๋ฑ์ ์ ๊ณตํ์ฌ ๊ธฐ์กด์ ํจ์ํ ์ปดํฌ๋ํธ์์ ํ ์ ์์๋ ๋ค์ํ ์์ ์ ํ ์ ์๋ค.
๐ ๊ธฐ๊ฐ: 23/6/15 ~ 23/6/22 ๐๐ผ ์ด๋ฒ์ฃผ ๋ชฉํ ๋ฆฌ์กํธ ์ฌ์ง์ ์ ์ํ ์ ๋ฌธ ๊ณต๋ถ ๐๐ผ ๊ณต๋ถํ ๋ด์ฉ ์์ฝ ๋ฆฌ์กํธ์์ ์์ฃผ ์ฐ์ด๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฌธ๋ฒ ์์ฝ(ES6) ์ปดํฌ๋ํธ, props, state ๋ฑ ๊ฐ๋จํ ๊ฐ๋ ๊ณต๋ถ ๐๐ผ ์ด๋ ค์ด ๋ด์ฉ ๋ถ๋ณ์ฑ
๋ฆฌ์กํธ๋ก ์์ ํ๋ค๋ณด๋ฉด importํด์ ํ์ผ์ ๊ฐ์ง๊ณ ์ค๋๋ฐ ../../../react ์ ๊ฐ์ด ์๋ ๊ฒฝ๋ก๋ก ์์ฑํ ๊ฒฝ์ฐ, ์ด ํ์ผ์ ๋ค๋ฅธ ๊ฒฝ๋ก๋ก ์ฎ๊ธธ ๊ฒฝ์ฐ ์๋๊ฒฝ๋ก์ด๊ธฐ ๋๋ฌธ์ path๊ฐ ๋ฌ๋ผ์ ธ์ import ์ค๋ฅ๊ฐ ๋ํ๋ ์ ์๋ค. srcํด๋์ ๋๋ํ๊ฒ ์๋ ํ์ผ์ ๋ง
SPA(Single Page Application)๋? Single Page Application, ํ ๊ฐ์ ํ์ด์ง๋ก ์ด๋ฃจ์ด์ง ์ ํ๋ฆฌ์ผ์ด์ ์ด๋ผ๋ ๋ง์ด๋ค. MPA(Multi Page Application)๊ณผ๋ ์๋ฐ๋ ๊ฐ๋ . ์ฅ์ ๋ฑ ํ๊ฐ์ ํ์ด์ง(Single Pag
๐ ๊ธฐ๊ฐ: 23/5/29 ~ 23/6/3 ๐๐ผ ์ด๋ฒ์ฃผ ๋ชฉํ 3์ฃผ์ฐจ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ์ต์ 2๋ฌธ์ ํ๊ธฐ ๐๐ผ ๊ณต๋ถํ ๋ด์ฉ ์์ฝ ํจ์๊ณ ๊ธ, ๊ฐ์ฒด์ ๊ธฐ๋ณธ, ๊ฐ์ฒด์ ์์ฑ๊ณผ ๋ฉ์๋ ์ฌ์ฉํ๊ธฐ์ฝ๊ณ , ํ์ธ๋ฌธ์ ํ๊ณ TIL์ฌ๋ฆฌ๊ธฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ํผ์ ๊ณ ๋ฏผํ๋ฉฐ
๋ฌธ์์ด s ์ค ์ซ์๋ง์ผ๋ก ์ด๋ฃจ์ด์ ธ์๋ค๋ฉด true, ๋ฌธ์์ด์ด ํจ๊ป ์๋ค๋ฉด false๋ฅผ ๋ฆฌํดํ๋ ๋ฌธ์ ์ด๋ค. Number() ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ์ซ์๋ก ๋ฐ๊ฟ์ค ๋ค์์ ์ซ์์ธ์ง ์๋์ง๋ฅผ ์กฐ๊ฑด์ ๊ฑธ์ด ํ์ธํ๋ฉด ๋์ค๋ ๋ฌธ์ ๋ผ ๊ฐ๋จํ๊ฒ ์๊ฐํด์ for...of๋ฌธ์ ์ด์ฉํด์ value
์ฝ๋ฐฑํจ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ ํจ์๋ ํ๋์ ์๋ฃํ์ด๋ฏ๋ก ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌํ ์ ์๋ค. ์ด๋ ๊ฒ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌํ๋ ํจ์๋ฅผ ์ฝ๋ฐฑํจ์๋ผ๊ณ ํ๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ ์ฝ๋๋ฅผ ์์์ ์๋๋ก ์์ฐจ์ ์ผ๋ก ์คํํ๋ค. ๊ทธ๋ฌ๋ ์ฝ๋๋ ์์ฐจ์ ์ผ๋ก ์คํ๋์ง ์์ ์๋ ์๋ค. ์ด๋ฐ๊ฑธ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ด
๊ธฐ๋ณธ ์๋ฃํ๊ณผ ์ฐ๊ฒฐ๋ ๊ฐ์ฒด์์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฒ์๋ Number๊ฐ์ฒด, String ๊ฐ์ฒด, JSON ๊ฐ์ฒด, Math ๊ฐ์ฒด๊ฐ ์๋ค. Number ๊ฐ์ฒด ์ซ์ N๋ฒ์งธ ์๋ฆฟ์๊น์ง ์ถ๋ ฅํ๊ธฐ: toFixed() ์์์ ์ดํ ๋ช ์๋ฆฌ๊น์ง๋ง ์ถ๋ ฅํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค. ์์์ ์๋
๐ ๊ธฐ๊ฐ: 23/5/22 ~ 23/5/28 ๐๐ผ ์ด๋ฒ์ฃผ ๋ชฉํ 2์ฃผ์ฐจ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ์ต์ 2๋ฌธ์ ํ๊ธฐ ๐๐ผ ๊ณต๋ถํ ๋ด์ฉ ์์ฝ switch ์กฐ๊ฑด๋ฌธ๊ณผ ์งง์ ์กฐ๊ฑด๋ฌธ, ๋ฐฐ์ด, ๋ฐ๋ณต๋ฌธ, ํจ์์ ๊ธฐ๋ณธํํ์ฝ๊ณ , ํ์ธ๋ฌธ์ ํ๊ณ TIL์ฌ๋ฆฌ๊ธฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ
ํจ์๋ ์ฝ๋์ ์งํฉ๋๋ค. ํจ์์ ์๋ฃํ์ function์ด๋ฉฐ,์ต๋ช ํจ์, ์ ์ธ์ ํจ์๊ฐ ์๋ค. ํจ์์ ๊ด๋ จ๋ ์์ ๋ฅผ ๋ช๊ฐ์ง ํ๋ฉด์ ํจ์์ ๋ ์นํด์ง๊ฒ ๋์๋ค.
๋ ๋ฐฐ์ด์ ๋น๊ตํด์ false๋ฉด ์์๋ฅผ ๋ฃ๊ณ , true๋ฉด ์์๋ฅผ ๋ฃ์ด์ ํฉ์ ๊ตฌํ๋ ๋ด์ฉ์ธ๋ฐ ๊ฐ๋จํ๋ฉด์๋ ์ค๋๊ฑธ๋ฆฐ ๋ฌธ์ ์ด๋ค. ์ด ๋ฌธ์ ์ญ์ filter๋ reduce๋ฅผ ์ด์ฉํ๋ฉด ๊ฐ๋จํ๊ฒ ๋์ฌ๊ฑฐ ๊ฐ์๋ฐ ์ฝ์ง ์์๋ค. ๊ณ์ ์ด๋ ต๊ฒ ์๊ฐํ๋ฉด์ ํ๋ ค๊ณ ํ๋ ์ํ๋ฆฌ๋ค๊ฐ ๋ฐ
๋ฐ๋ณต๋ฌธํ๋ฉด ๋ญ๋ค? ๋ฐ๋ก ํผ๋ผ๋ฏธ๋ ๋ณ์ฐ๊ธฐ์ด๋ค. ๋ํ๊ต ์ ๊ณต๊ณผ๋ชฉ๋ ์ํ๋ฌธ์ ๋ก ๋์๋ ๊ธฐ์ต์ด ์๋ค. ๊ทธ๋ ์ฐธ ์ด๋ ค์ ๋๋ฐ,, ์ง๊ธ๋ ์ด๋ ต๋ค^^ ์ค์ฒฉ ๋ฐ๋ณต๋ฌธ์ ์ด์ฉํด์ ๋ณ์ ์ฐ์ด์ผ ํ๋๋ฐ, ํผ๋ผ๋ฏธ๋ ํํ๋ก๋ ๋ง๋ค๊ณ , ์ผ๊ฐํ์ผ๋ก๋ ๋ง๋ค์ด๋ณด๊ณ , ๊ฑฐ๊พธ๋ก๋ ๋ง๋ค์ด๋ณด์๋ค. (๋ณ ํ๋๋ก
๋ฌธ์์ด s๋ฅผ ๋ฐฐ์ด์ ๋ด์์ ์์์ ๊ฐ์๋ฅผ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฝ๋๋ฅผ ์ง๋ ค๊ณ ํ๋ค. ๋ฐฐ์ด์์ ํน์ ๊ฐ ๊ฐ์ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ ์ฝ 3๊ฐ์ง ์ ๋๋ก ์ ๋ฆฌํด๋ณด์๋ค. for ๋ฐ๋ณต๋ฌธ filter reduce ๊ฐ์ฅ ๊ฐ๋จํ๊ฒ๋ for๋ฌธ์ด์์ง๋ง reduce๋ฅผ ๋๋ฌด ์ฐ๊ณ ์ถ์์ง๋ง redu