๐ ํ๋ก์ ํธ
ํ ์ดํ๋ก์ ํธ | [React] TodoAPP
๐ ๋ณธ ๊ธ์ 2022๋ 3์ 9์ผ ๊ฐ์ธ github ์ ์์ฑ๋ ๊ธ์ ๋๋ค. ๐ ๊ธฐ๋ณธ ๊ธฐ๋ฅ ์๋ฃ: (2022.03.06 - 2022.03.07) ๋ค๋ค ํ๋ฒ์ฉ์ ๋ง๋ค์ด๋ณธ๋ค๋ TodoApp์ด ๋์ ์ฒซ ๋ฆฌ์กํธ ํ๋ก์ ํธ๊ฐ ๋์๋ค. ๋ฐฑ๋ฌธ๋ถ์ฌ์ผ๊ฒฌ์ด๋ผ๋ ๋ง์ฒ๋ผ, ๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํ๋ฉด์ state, props ๊ฐ๋ ์ ์ดํดํ๊ฒ ๋๊ณ state Hook, Effet HooK ๋ฑ์ ์ฌ์ฉํ๋ฉด์ ์ ํ์ํ์ง, ์ด๋ป๊ฒ ์ฌ์ฉํ๋ ๊ฒ์ธ์ง ๊ณต๋ถํ๊ฒ ๋ ์๊ฐ์ด์๋ค. ๋ฌด์๋ณด๋ค, ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ฌ์ฌ์ฉ์ด ์ข๋ค๋ ๋ฆฌ์กํธ์ ์ฅ์ ์ ์ง์ ๋ง๋ค์ด๋ณด๋ฉด์ ๋ค์ํ๋ฒ ์ฒด๊ฐํ๊ฒ ๋์๋ค.๐ ์๋ก๊ณ ์นจ์ ํ์ฌ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์งํ๊ธฐ ์ํด localStorage ๋ฅผ ์ฌ์ฉํด๋ณด๊ณ , firebase๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐํฌ๊น์ง ๊ฒฝํํด๋ณธ ๊ฐ์ง ๊ฒฝํ์ด์๋ค. ๐ฏ ๊ตฌํ๊ธฐ๋ฅ
ํ ์ดํ๋ก์ ํธ | [JavaScript] ์นด๋ ์ง ๋ง์ถ๊ธฐ
๐ฏ ์นด๋ ์ง ๋ง์ถ๊ธฐ๐ 2022.2.13 (1์ฐจ ์์ฑ) ๊ฒ์ ๊ท์น (๊ธฐ๋ณธ ๊ธฐ๋ฅ) 2์์ด ๊ฐ์ ๋๋คํ ์นด๋ N์ฅ์ ๋ท๋ฉด์ ๋ณด์ฌ์ค๋ค. 1์ฅ์ ์ ํํ๋ฉด ํด๋น์นด๋์ ์๋ฉด์ ๋ณด์ฌ์ค๋ค. ๋๋จธ์ง ๋ค๋ฅธ 1์ฅ์ ์ ํํ์๋ ๊ฐ๋ค๋ฉด ๋ณด์ฌ์ฃผ๊ณ ์๋๋ผ๋ฉด ๋ค์ ๋๋ค ๋ค์ง์ด ๋๋ค. ๋ค ๋ง์ผ๋ฉด ์ฑ๊ณต ๊ตฌํ ๊ธฐ๋ฅ Object, Array๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ์๋ค. 1์ฅ์ ์ ํํ๋ฉด ํด๋น์นด๋์ ์๋ฉด์ ๋ณด์ฌ์ค๋ค. 2์ฅ์ ์นด๋๋ฅผ ์ ํํ๋ฉด, ์นด๋์ ์๋ฉด ๊ทธ๋ฆผ์ด ๋ง๋์ง ๋น๊ตํ๋ค. ์์ฌ์ด ์ ์ด๋ฒ ํ ์ดํ๋ก์ ํธ๋ ๊ฐ์ธ์ ์ผ๋ก ๊ตฌํํ์ง ๋ชปํ ๋ถ๋ถ์ด ๋ง์์ ์์ฌ์์ด ๋ง๋ค. Object์ ๊ฐ๋ ์ ๋ณด๊ธฐ๋ง ํ์ง, ์ง์ ๊ตฌํ์ ํ๋ ๊ฐ๋จํ ๊ฒ์๋ ํท๊ฐ๋ ค์ ์ฌ๋ฌ๋ฒ ์ฝ์๋ก ํ์ธํด๊ฐ๋ฉด์, ๊ตฌํ์ ์งํํ์๋ค. ๊ตฌํํ ๋น์์ ๋๊ธฐ๋น๋๊ธฐ, promise, Json ์ ๋ฐฐ์ ์ด์,..
ํ ์ดํ๋ก์ ํธ | [JavaScript] ๊ณ์ฐ๊ธฐ
๐ ๋ณธ ๊ธ์ 2022๋ 2์ 20์ผ ๊ฐ์ธ velog์ ์์ฑ๋ ๊ธ์ ๋๋ค. ๋ฒ์จ ์๋ฐ์คํฌ๋ฆฝํธ์ ์ ๋ฌธํ์ง ํ๋ฌ์ด๋ผ๋ ์๊ฐ์ด ์ง๋ฌ๋ค..์ด๋ฒ์ฃผ๋ ์์ ๋ ๋ฐ๋ผ๊ฐ๊ธฐ ํ๋ค์ด์ ๊ฐ๋จํ ํ ์ดํ๋ก์ ํธ๋ฅผ ํ์๋ ์๊ฐ์ ๊ณ์ฐ๊ธฐ ๋ง๋ค๊ธฐ๋ฅผ ํ๋๋ฐ, ์์๊ณผ ๋ฌ๋ฆฌ ๋์ ์ค์๋ค๋ก ์ธํด ๊ฝค ๊ธด ์๊ฐ ์๊ฐํ๊ฒ ๋ง๋ ํ ์ดํ๋ก์ ํธ๋ค. ๐ ์ฌ๊ฑด์ ๋ฐ๋จ: ๊ตฌํํด์ผํ๋ ๊ธฐ๋ฅ๋ค์ ์ ์ฒด์ ์ผ๋ก ํ์ ํ์ง ๋ชปํจ. ์ด์ ์ ๋ง๋ ํ ์ดํ๋ก์ ํธ๋ค์ ๋๋ต์ ์ผ๋ก ๊ตฌํํด์ผํ๋ ๊ธฐ๋ฅ๋ค์ ์์๋๋ก ์ ์ด๋๊ณ ์์ํ์๋๋ฐ, ์ด๋ฒ์๋ '๊ณ์ฐ๊ธฐ๋ ๋ญ ๊ณ์ฐ๋ฐ์ ๋ ์๋~' ํ๋ ์๊ฐ์ ๊ทธ๋ฅ ์์ํ๋ค. ์ฆ ๊ตฌํํด์ผํ๋ ๊ธฐ๋ฅ๋ค์ ์ ์ฒด์ ์ผ๋ก ํ์ ํ์ง ์์ ์ํ์์ ๊ตฌํ๋ถํฐ ์์ํ๊ณ , ์ค์์ ์์์ด์๋ค. ์๋ชป๋ ์์ btnAll.forEach(button => { button.addEv..
ํ ์ดํ๋ก์ ํธ | [JavaScript] ๋ค๋ฅธ ๊ธ์ ์ฐพ๊ธฐ ๊ฒ์
๐ ๋ณธ ๊ธ์ 2022๋ 2์ 7์ผ ๊ฐ์ธ github์ ์์ฑ๋ ๊ธ์ ๋๋ค. โ ์ฒซ๋ฒ์งธ ํ ์ดํ๋ก์ ํธ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ธ๋ก๊ทธ ๋ฅผ ์ฐธ๊ณ ํ์ฌ ๋๋ฒ์งธ ๊ฒ์์ ๋ง๋ค์๋ค. ๊ฒ์ ๊ธฐ๋ณธ ์๊ตฌ ์ฌํญ 1. N x M ์ ํ๋ฉด์ ํ๋๋ง ๋ค๋ฅธ ๊ธ์๋ก ์ฑ์์ ๋ณด์ฌ์ค๋ค. 2. ํด๋น ๊ฒ์์ ์ ๋ต ๊ธ์ ์์น๋ ๋งค๋ฒ ๋ฌ๋ผ์ ธ์ผ ํ๋ค 3. ์ ๋ต ๊ธ์๋ฅผ ์ ํํ๋ฉด ๋ค์ stage๋ก ๋์ด๊ฐ๋ค. 4. ์๋๋ฉด ์คํจ ๋ฉ์์ง๋ฅผ ๋์ฐ๊ณ ์ข ๋ฃํ๋ค. โ ๊ตฌํ ๊ธฐ๋ฅ 1. ๊ธฐ๋ณธ ๋์ 2. ์๊ฐ ์ด๊ณผ โ ๋๋ค์ผ๋ก ์์น ์ค์ . // ์ฒ์ ์์ฑํ ์ฝ๋ function shuffle() { for(let i = 0; i < array.length; i ++) { const randomNum = Math.floor(Math.random() * (i)); const tempor..
ํ ์ดํ๋ก์ ํธ | [JavaScript] ๊ฐ์๋ฐ์๋ณด ๊ฒ์
๐ ๋ณธ ๊ธ์ 2022๋ 1์ 31์ผ ๊ฐ์ธ velog์ ์์ฑ๋ ๊ธ์ ๋๋ค. ์๋ฐ์คํฌ๋ฆฝํธ ์คํฐ๋๋ฅผ ์์ํ๋ฉด์ ๋ง๋ ๊ฐ์๋ฐ์๋ณด ๊ฒ์์ด๋ค! ๋๋ฌด ์ ๋ช ํ ํ ์ดํ๋ก์ ํธ์ด๊ธฐ๋ ํ๊ณ , ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ๋ ๋๋ฌด ๊ฐ๋จํ ๊ตฌํ์ผ ๊ฒ ๊ฐ์์.. ์ ์ ๊ณ ๋ฏผํ์ง๋ง, ๊ทธ๋๋ ๊ธฐ๋กํ๋ ๊ฒ์ด ์ค์ค๋ก์๊ฒ ์ข์ ๊ฒ ๊ฐ์์ ์ฌ๋ ค๋ณธ๋ค.๐ ๊ฒ์ ๊ท์น (๊ธฐ๋ณธ ๊ธฐ๋ฅ) ์ฌ์ฉ์๊ฐ ๊ฐ์๋ฐ์๋ณด ์ค ํ๊ฐ์ง ๊ฐ์ ์ ํํ๋ค. ์ปดํจํฐ์์ ๋๋ค์ผ๋ก ๊ฐ์๋ฐ์๋ณด ์ค ํ๋์ ๊ฐ์ด ์ถ๋ ฅ๋๋ค. ๋๊ฐ์ ๊ฐ์ ๋น๊ตํ์ฌ ์ ์๊ฐ ์ ๋ฐ์ดํธ ๋๋ค. ๊ตฌํ ๊ธฐ๋ฅ ์ปดํจํฐ์์ ๋๋ค์ผ๋ก ๊ฐ์๋ฐ์๋ณด ์ค ํ๋์ ๊ฐ์ด ์ถ๋ ฅ๋๋ค. ์ฌ์ฉ์๊ฐ ์ ํํ ๊ฐ๊ณผ ์ปดํจํฐ๊ฐ ์ ํํ ๊ฐ์ ๋น๊ตํ์ฌ ์ ์๊ฐ ์ ๋ฐ์ดํธ ๋๋ค. ์ด๊ธด ์ชฝ์ backgroundColor ๊ฐ ๋ณ๊ฒฝ๋์ด, ์ฌ์ฉ์๊ฐ ์ฝ๊ฒ ํ์ ํ ์ ์๋๋ก ํ์๋ค. r..