๐ฉ๐ป ๊ฐ๋ฐ ๊ณต๋ถ/2025 ํ๊ฒฝxํ ์ค ๋ถ์บ (Fullstack) (9) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [ํ๊ฒฝxToss] 4์ฃผ์ฐจ ์์ฝ : JS ์ค๊ธ * ๊ฐ์ธ์ ํ์ต ๋ด์ฉ ๊ธฐ๋ก ์ค, ๊ทนํ ์ผ๋ถ์ ๋ด์ฉ๋ง ์์ฑ๋์์ต๋๋ค.ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด(Template literals) - es6๋ถํฐ์ ์ด๋ฆ์ ${name}์ ๋๋ค. ๋ฐฐ์ด(Array)์ฐ์๋ ๊ณต๊ฐ์ ๋์ผํ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ์์ฐจ์ ์ผ๋ก ๋์ดํ ์๋ฃ๊ตฌ์กฐArray ๊ฐ์ฒดnew : ๊ฐ์ฒด ์์ฑ ์ ์ฌ์ฉํ๋ ์์ฝ์ด๊ฐ์ฒด(Object) : ์ฝ๋๋ก ์ ์(ํด๋์ค, ํจ์)๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌ ํ ํ์ฑํ๋ ์ํ. ์ธ์คํด์คinstanceof : ๊ฐ์ฒด๊ฐ ํน์ ํด๋์ค์ ์ํ๋์ง ์๋์ง๋ฅผ ํ์ธjs ๋ฐฐ์ด์ ๋ฆฌ์คํธ ๊ธฐ๋ฅ์ ํฌํจ ๊ฐ ํ์ ๋ณ์ vs ์ฐธ์กฐํ์ ๋ณ์๊ฐ ํ์ ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ค์ ๊ฐ์ ๊ฐ์ง์ฐธ์กฐ ํ์ ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ ์ฃผ์๋ฅผ ๊ฐ์งํจ์(Function)์ฉ๋1. ์ฝ๋ ์ค๋ณต ์ ๊ฑฐ - ์ฌ์ฌ์ฉ์ฑ2. ์ฝ๋ ์ด๋ฆ - ๊ฐ๋ ์ฑ3. ๊ธฐ๋ฅ์ ๋ถ๋ฆฌ/๊ฒฐํฉ - ๋ชจ๋ํ.. [ํ๊ฒฝxToss] ๐์ถ๊ฐ๊ณต๋ถ) Javascript ํ์ดํ ํจ์ ์ฅ์ / arrow function ์ฌ์ฉ ์ด์ ES6 ๋ฌธ๋ฒ ์ดํ๋ถํฐ ํ์ดํ ํจ์๊ฐ ๋ฑ์ฅํ๋ค ๊ถ๊ธํ ๊ฒ :์ JS์์ ํ์ดํ ํจ์ ์ฌ์ฉ์ ๊ถ์ฅํ๋๊ฑธ๊น? ์ ? WHY/ ?? 1. ํจ์ํ ๋ณ์ const apple = 1000; // ๋ณ์const add = (a, b) => a + b; // ํ์ดํ ํจ์console.log(add(2, 3)); // 5 ์ฌ์ฉ์ด ์ง๊ด์ ์ด๋ค.๋ณ์์ ๋์ผํ๊ฒ ์ ์ธ ํ, ๋ณ์ ์ด๋ฆ์ ํธ์ถํ๋ฉด ํจ์๋ฅผ ์คํ์ํฌ ์ ์๋ค! 2. ๊ฐ๋จํ ์์ ์งง์ ์์์ผ ๊ฒฝ์ฐ ๊ดํธ๊ฐ ํ์์๋ค let func = x => x * 2 ; 3. this๋ฅผ ์ฌ์ฉํ์ง ์๋๋ค. ๐๐๐โผ๏ธ ์ผ๋ฐ ํจ์ ๋ด์์๋ this๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋, ํ์ดํ ํจ์์๋ ํด๋น ๋ฌธ๋ฒ์ด ์ ์ฉ๋์ง ์์.๊ทผ๋ฐ ์ด๊ฒ ์ฅ์ ์ด ๋๋ค.ํ์ดํ ํจ์ ๋ด์์ this๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ, ์์์.. [ํ๊ฒฝxToss] ๐ฅ์ถ๊ฐ๊ณต๋ถ) Number, parseInt ํน์ง๊ณผ ์ฐจ์ด์ , JS ๋๋์ , Math.floor, ๋ช ์์ ์ง๋ฒ ์ง์ ์ฝํ ์ค๋น๋ฅผ c++๋ก ํ๋ค๋ณด๋ js ํ์ ์ด ์ต์ํ์ง ์ใทใ .. ์จํํ์ด๋ ๋๋ฌด ๋ค๋ฅด๋ค ใ ใ ์ฐ์ฐ ์ ๋ณ์ ์ ์ฒ๋ฆฌํ๊ธฐ….!!! ๐๐ ๊ถ๊ธํ ๊ฒ :let score = prompt().split(’ ’);let avg = 0;for(let i=0; i1. Number์ parseInt ์ฐจ์ด Number : ๋ด๋ถ์ ์๋ฅผ ์ซ์๋ก ๋ณํ,๋ฌธ์์ด ์ ์ฒด๋ฅผ ์ซ์๋ก ๋ณํํ๋ฏ๋ก ๋ณํํ ์ ์๋ ๊ฒฝ์ฐ NaN์ ๋ฆฌํด. parseInt : ๋ฌธ์์ด์์ ์ ์๋ฅผ ์ถ์ถ.๋ฌธ์์ด์ ์ซ์๊ฐ ์๋ ๋ฌธ์๊ฐ ํฌํจ๋์ด๋, ์์ชฝ์ ์ซ์ ๋ถ๋ถ๋ง ์ฒ๋ฆฌ console.log(parseInt("42")); // 42console.log(parseInt("42px")); // 42console.log(parseInt(" 42")); .. [ํ๊ฒฝxToss] 3์ฃผ์ฐจ ์์ฝ : CSS ์ค๊ธ ๋ฐ Javascript * ๊ฐ์ธ์ ํ์ต ๋ด์ฉ ๊ธฐ๋ก ์ค, ๊ทนํ ์ผ๋ถ์ ๋ด์ฉ๋ง ์์ฑ๋์์ต๋๋ค. 3์ฃผ์ฐจ ์ค์ตCSS ์ค๊ธ ์ด๋ฏธ์ง ์๋ผ์ ๋ฐฐ๊ฒฝ์ผ๋ก ์ฐ๊ธฐ : background-position๊ฐ์์์ ์ ํ์ before/after li ๊ฐ๋ก๋ก ๋ฐฐ์นํ๊ธฐlist-style: none;display:inline-block;padding: 10px; ๋ณํํจ๊ณผ - transition ์์ฑ ์์ฑ ์ข ๋ฅtransition-delay : ์ง์ฐ์๊ฐduration : ๋ณํ์๊ฐproperty : ๋์ ์์ฑtiming-function : ๋ณด๊ฐ ํ์ (์ธํฐํด๋ ์ด์ , ์๊ฐ์ ๊ฐ๊ฒฉ์ ์ฑ์)cubic-bezier()๋ฐฐ์ง์ด ๊ณก์ - ์ํ์ ๋ฒ ์ง์ด๊ฐ ์ ์ํ ๋ ์ ๋ง์ผ๋ก ๊ณก์ ์ ์ ์ํ๋ ๊ณต์๋ณํ ์์ฑ - transform ์์ฑ CSS ์ด๊ธฐํ ์ฝ๋: Eric Meyer’s .. [ํ๊ฒฝxToss] ๐์ถ๊ฐ๊ณต๋ถ) daisyUI dark mode / Tailwind CSS option / ๋ฐ์ด์ง UI ๋คํฌ๋ชจ๋ ์๋ ์ค์ ๊ถ๊ธํ๋ ๊ฒ :์ต๊ทผ UIUX ์ธก๋ฉด์์ ๋คํฌ๋ชจ๋๊ฐ ํ์์ด๋ค๋ชจ๋ ์์๋ฅผ daisyui๋ก ๋ง๋ ๋ค๋ฉด, ๋คํฌ๋ชจ๋๊ฐ ์ฌ์ฉ์ PCํ๊ฒฝ์ ๋ง๊ฒ ์๋์ผ๋ก ์ ์ฉ๋๋๊ฑธ๊น? ์ค๋ daisyUI๋ฅผ ๋ฐฐ์ ๋ค.๋ช๋ ๋์ FE๊ฐ๋ฐ์ ํ๋ฉด์, CSS๋ฅผ ํ๋ํ๋ ๊น์ ๋ง๋ค์๋๋ฐ์ด๋ฐ component ํ๋ ์์ํฌ๊ฐ ์๋ค๋ ์ ์ธ๊ณ๋ฅผ ์ ํ ๋๋์ด๋ค ๐ DaisyUI๋?Tailwind CSS๋ฅผ ํ์ฅํ๋ UI ์ปดํฌ๋ํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฏธ๋ฆฌ ์ค๊ณ๋ UI ์์๋ฅผ ์ ๊ณตํ์ฌ ๋น ๋ฅด๊ณ ์ฝ๊ฒ ์คํ์ผ๋ง๋ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ ์ ์์https://daisyui.com/docs/cdn/ Use daisyUI from CDN — Tailwind CSS Components ( version 4 update is here )How to use daisyUI from a CDN?d.. [ํ๊ฒฝxToss] ๐์ถ๊ฐ๊ณต๋ถ) Tailwind CSS Media Queries / ํ ์ผ์๋ ๋ฐ์ํ ์คํ์ผ ์ฒ๋ฆฌ / ๋ฏธ๋์ด์ฟผ๋ฆฌ ์ ๋์ด ๊ถ๊ธํ๋ ๊ฒ :Tailwind ๋ฏธ๋์ด์ฟผ๋ฆฌ์์ ํ๋ฉด ๋๋น๊ฐ sm๋ณด๋ค ์์ ์ํฉ์ ์ด๋ป๊ฒ ์ฒ๋ฆฌ๋๋?Tailwind์ ์ฅ์ , ๋จ์ ์ ๋ฌด์์ธ๊ฐ?์์ ์๊ฐ์ Tailwind๋ฅผ ์ฒ์์ผ๋ก ๋ฐฐ์ ๋ค (FE๊ฐ๋ฐ์ ๋ง๋์..?) ์ฐ์ Tailwind๋,์ ํธ๋ฆฌํฐ ํด๋์ค ๊ธฐ๋ฐ์ CSS ํ๋ ์์ํฌ์ด๋ค.๋ฏธ๋ฆฌ ์ ์๋ ํด๋์ค๋ฅผ ์ฌ์ฉํด HTML์์ ์ง์ ์คํ์ผ์ ์ ์ฉํ ์ ์๊ณ ,๊ธฐ์กด CSS ์์ฑ ์์ด ๋น ๋ฅด๊ฒ ๋ ์ด์์๊ณผ ๋์์ธ์ ๊ตฌํํ ์ ์๋ค. ๋ฏธ๋์ด ์ฟผ๋ฆฌ์์๋ ์ ์ฝ๋์ ๊ฐ์ด, ๋ฐ์ํ ์ ๋์ด๋ฅผ ์ฌ์ฉํ๋ค. • sm: 640px ์ด์ • md: 768px ์ด์ • lg: 1024px ์ด์ • xl: 1280px ์ด์ • 2xl: 1536px ์ด์ ์ฌ๊ธฐ์ ๋ด ์๊ฐ ์๋ ์นํ์ด์ง CSS๋ฅผ ์ฒ์์ PC ๊ธฐ์ค์ผ๋ก ๋ง๋ค๊ณ , PC/tablet/.. [ํ๊ฒฝxToss] ๐์ถ๊ฐ๊ณต๋ถ) CSS ๋ฐ์ ๋ฐ๋ณต ์ค์ / fade over ์์น / SCSS ๊ถ๊ธํ๋ ๊ฒ :์ํ/์๋งค/๊ทน์ฅ ๊ฐ ๋ฒํผ์ ์์๋ฅผ n์ด๋ผ๊ณ ํ ๋,hover ์ ๋ํ๋๋ ์๋์ชฝ hidden menu ๋ฆฌ์คํธ๋ฅผmargin-right: calc(50%-n); ์ด๋ฐ ์์ผ๋ก ๊ณ์ฐํด์ ๊ฐ ๋ฒํผ๋ง๋ค ์์น๋ฅผ ๋ค๋ฅด๊ฒ ํ๊ณ ์ถ์๋ค. ์์ง ์์ ์์ ์์ html, css๋ง ์ฌ์ฉ์ค์ด๋ผnth-child(๊ท์ฐฎ์)์ด๋ JS ์ด์ธ์๋ ๋ฐฉ๋ฒ์ด ์๋์ง ๊ถ๊ธํด์ก๋ค! chatGPTํํ ์ฐ์ ๋ฌผ์ด๋ด -> ๊ฐ์ฌ๋๊ป๋ ์ฌ์ญ์ด๋ด ๋ฐฉ๋ฒ 1: nth-child์ calc() ์กฐํฉCSS์ nth-child()๋ฅผ ํ์ฉํ์ฌ ํน์ ์์์ ๋ฐ๋ผ ๋ค๋ฅธ ์คํ์ผ์ ์ ์ฉํ ์ ์๋ค..hidden_menu:nth-child(1) .menulist { margin-right: calc(50% - 10px); /* ์ฒซ ๋ฒ์งธ hidden_menu *.. [ํ๊ฒฝxToss] 1-2์ฃผ์ฐจ ์์ฝ : ์ปดํจํฐ ๊ต์ก / HTML / CSS * ๊ฐ์ธ์ ํ์ต ๋ด์ฉ ๊ธฐ๋ก ์ค, ๊ทนํ ์ผ๋ถ์ ๋ด์ฉ๋ง ์์ฑ๋์์ต๋๋ค. ๋งค์ผ ๋ ธ์ ์ ํ์ต ๋ด์ฉ์ ์ ๋ฆฌํ๊ณ ์๋๋ฐ, ๋ธ๋ก๊ทธ์๋ ์์ฝํด์ ์ ๋ฆฌํ๋ฉด ์ข์ ๊ฒ ๊ฐ์ ์ ๋ก๋ํ๋คํ๊ณ ..๊ฐ ์๋ ๋ฆฌ์ผ ์์ฝ ๊ฐ์ฌ๋์ด ํญ์ ์ค๋ช ํ์ค ๋ ์ต๋ํ ๊ตฌ์ฒด์ ์ผ๋ก ์๋ ค์ฃผ์ ์๋ชจ๋ฅด๋ ๋ด์ฉ์ด๋ ์ ๋งคํ๊ฒ ์๊ณ ์๋ ๊ฒ๋ค์ ํ์คํ๊ฒ ๊นจ๋ซ๊ณ ๋์ด๊ฐ ์ ์์ด์ ์ข์๋ค.์ ๊ณต ๊ณผ๋ชฉ์์ ๋ชจ๋ ๋ฐฐ์ ๋ ๋ด์ฉ์ด์ง๋ง, ์ด๋ ๊ฒ ๋ณต์ตํ๋ฉด์ ์๋ก์ด ๋ด์ฉ์ด๋ ๊ฟํ๋ ์๊ฒ ๋จ!! chap1. ์ด์์ฒด์ (OS)chap2. ์ปดํจํฐ ๊ตฌ์กฐ2์ง์ ์์์ โผ๏ธ์ 8 / 16์ง์๋ก ๋ณํ : ์์์ ๊ธฐ์ค์ผ๋ก 3 / 4๊ฐ์ฉ ์๋ฅด๊ณ ์๋ค์ 0์ ์ฑ์ฐ๊ณ ๋ณํchap3. ์ ๋ณดํต์ chap4. ๋คํธ์ํฌ์์ฑํ AI (LLM)chatGPT : ์ค์๊ฐ ๊ฒ์ํด๋ก๋ : 10๊ฐ์ ์ ๋ฐ์ดํฐ๊น์ง ์ ํจ์ ๋ฏธ๋.. ์ด์ 1 2 ๋ค์