๋ฐฐํฌ์ ๋ํด ํ์ตํ๊ณ ์ค์ตํ๋ ์๊ฐ์ ๊ฐ์ก๋ค.๊ธฐ์กด ์๋ฒ์ ๊ฒฝ์ฐ ์ ์ฐ์ค ๋ฑ์ ์ปดํจํฐ๋ฅผ ๋ฐฐ์นํ๊ณ ์ธํฐ๋ท์ ์ฐ๊ฒฐํด ์๋น์ค๋ฅผ ์ ๊ณตํ๋ค.์์ฉ ๋ฅ๋ ฅ์ ํ๊ณ(์ฃผ๊ธฐ์ ์ธ ์ ์ง ๊ด๋ฆฌ, ๊ณต๊ฐ์ ํ๊ณ)๋ฅผ ๋๊ผ๊ณ ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํด๋ผ์ฐ๋๊ฐ ๋ฑ์ฅํ๋ค.์ด๋ ๊ฐ์ํ(Virtualization)
n๊ฐ ๊ฐ๊ฒฉ์ ์์๋ค ๋ฌธ์ ์ค๋ช ์ ์ ๋ฆฌ์คํธ numlist์ ์ ์ n์ด ์ฃผ์ด์ง ๋, numlist์ ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ๋ง์ง๋ง ์์๊น์ง n๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ์ ์ฅ๋์ด์๋ ์์๋ค์ ์ฐจ๋ก๋ก ๋ด์ ๋ฆฌ์คํธ๋ฅผ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ 5 โค num
๋ฌธ์์ด๋ค์ด ๋ด๊ธด ๋ฆฌ์คํธ๊ฐ ์ฃผ์ด์ก์ ๋, ๋ชจ๋ ๋ฌธ์์ด๋ค์ ์์๋๋ก ํฉ์น ๋ฌธ์์ด์ ๊ผฌ๋ฆฌ ๋ฌธ์์ด์ด๋ผ๊ณ ํฉ๋๋ค. ๊ผฌ๋ฆฌ ๋ฌธ์์ด์ ๋ง๋ค ๋ ํน์ ๋ฌธ์์ด์ ํฌํจํ ๋ฌธ์์ด์ ์ ์ธ์ํค๋ ค๊ณ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ฌธ์์ด ๋ฆฌ์คํธ "abc", "def", "ghi"๊ฐ ์๊ณ ๋ฌธ์์ด "ef"๋ฅผ ํฌ
โ๏ธ ์์ ๐ ๋ฐฐ์ด ๊ฒ โ๏ธ ๋ง์น๋ฉฐ
โ๏ธ ์์ ๐ ์๊ฒ ๋ ์ ์ซ์ํ ์ด๊ฑฐํ(Enum) ํน์ ๊ฐ์ ์งํฉ์ ์ ์ํ ๋ ์ฌ์ฉ๋๋ค. ์ซ์ํ, ๋ฌธ์์ด ๋๋ ์ด ๋๊ฐ์ง์ ์กฐํฉ์ผ๋ก ์ ์๋ ์ ์๋ค. ๊ธฐ๋ณธ ๊ฐ์ ์ซ์ ํ์ ์ฌ์ฉํ๋ค. ๊ฐ ๊ฐ์ ์๋์ผ๋ก 0๋ถํฐ ์์ํด 1์ฉ ์ฆ๊ฐํ๋ค. (์๋์ผ๋ก ๊ฐ์ ์ง์ ํ ์ ์๋ค.
๋ง์ดํฌ๋ก ์ํํธ์์ ๊ฐ๋ฐํ JavaScript์ ์์ ์งํฉ(Superset)์ธ์ด์ด๋ค.JavaScript์ ์ ์ ํ์ ๊ฒ์ฌ์ ํด๋์ค ๊ธฐ๋ฐ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ๋ฑ์ ๊ธฐ๋ฅ์ ์ถ๊ฐํด ๊ฐ๋ฐ๋ ์ธ์ด์ด๋ค.JavaScript๊ฐ ๋ฐ์ ํ๋ฉด์ ์๊ธด ๋จ์ (ํ์ ์ ๋ช ์์ฑ์ด ๋ถ์กฑํ ๋จ์ ์ผ๋ก ์ธ
์๋ฌด ์์๋ ๋ค์ด์์ง ์์ ๋น ๋ฐฐ์ด X๊ฐ ์์ต๋๋ค. ์์ ์ ์ ๋ฐฐ์ด arr๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, arr์ ์์์๋ถํฐ ์ฐจ๋ก๋๋ก ์์๋ฅผ ๋ณด๋ฉด์ ์์๊ฐ a๋ผ๋ฉด X์ ๋งจ ๋ค์ a๋ฅผ a๋ฒ ์ถ๊ฐํ๋ ์ผ์ ๋ฐ๋ณตํ ๋ค์ ๋ฐฐ์ด X๋ฅผ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด
์กฐ๊ฑด์ ๋ง๊ฒ ์์ด ๋ณํํ๊ธฐ 1 ๋ฌธ์ ์ค๋ช ์ ์ ๋ฐฐ์ด arr๊ฐ ์ฃผ์ด์ง๋๋ค. arr์ ๊ฐ ์์์ ๋ํด ๊ฐ์ด 50๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ ์ง์๋ผ๋ฉด 2๋ก ๋๋๊ณ , 50๋ณด๋ค ์์ ํ์๋ผ๋ฉด 2๋ฅผ ๊ณฑํฉ๋๋ค. ๊ทธ ๊ฒฐ๊ณผ์ธ ์ ์ ๋ฐฐ์ด์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ผ๋จ ๊ณ์ ์งํ์ ํ์ง๋ง... ๋ชจ๋ฅด๊ฒ ๋ค.. ์ด๊ฒ ๋ง๋..?๊ฒฐ๋ก ๋ง ๋งํ์๋ฉด ์์งํ ๋ง์ด ์งํํ์ง ๋ชปํ๋ค.๋ํ ์ด๊ฒ ๋ง๋? ์ถ๊ธฐ๋ ํ๋ค. ๊ทธ๋์ ๊ฐ๋ตํ๊ฒ๋ง ์์ฑํ๋ ค๊ณ ํ๋ค.Logo.jsLogo.stories.js์ฌ์ค ๋ก๊ณ ์ "Coz Shopping" ๋ถ๋ถ์ label๋ก ๋ฐ
๊ธฐ์กด์ ๊ตฌํํ ์๋ก ํ๋ก์ ํธ์ Storybook์ ์ฌ์ฉํด ํ๋ก์ ํธ ์ธํฐํ์ด์ค๋ฅผ ๋์์ธ ์์คํ ์ผ๋ก ๋ณํํ๋ ์์ ์ ์งํํ๋ค.Storybook ๋จผ์ ์ค์นํด์ผํ์ง๋ง ๊ทธ ๋ถ๋ถ์ ์ด์ ํ์ต์์ ๋์ผํ ๋ฐฉ์์ผ๋ก ์งํ๋์ด ๊ตณ์ด ์์ฑํ์ง ์์๋ค.๊ธฐ์กด์ ํ๋ก์ ํธ์์ ์ฌ์ฉ ์ค์ธ ๋ชจ๋ U
์ ์ ๋ฆฌ์คํธ num_list๊ฐ ์ฃผ์ด์ง ๋, ๋ง์ง๋ง ์์๊ฐ ๊ทธ์ ์์๋ณด๋ค ํฌ๋ฉด ๋ง์ง๋ง ์์์์ ๊ทธ์ ์์๋ฅผ ๋บ ๊ฐ์ ๋ง์ง๋ง ์์๊ฐ ๊ทธ์ ์์๋ณด๋ค ํฌ์ง ์๋ค๋ฉด ๋ง์ง๋ง ์์๋ฅผ ๋ ๋ฐฐํ ๊ฐ์ ์ถ๊ฐํ์ฌ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.2 โค num_list
์์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด my_string๊ณผ ์์๋ฌธ์ 1๊ธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด alp๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, my_string์์ alp์ ํด๋นํ๋ ๋ชจ๋ ๊ธ์๋ฅผ ๋๋ฌธ์๋ก ๋ฐ๊พผ ๋ฌธ์์ด์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.1 โค my_string์
๋์์ธ ์์คํ , ์ํ ๋ฏน ๋์์ธ, storybook์ ํ์ฉํ ๋์์ธ ์์คํ ๋ฑ์ ๋ํด ํ์ตํ๋ค.๋์์ธ ์์น ๋ถํฐ ์ฌ์ฌ์ฉํ ์ ์๋ UI ํจํด๊ณผ ์ปดํฌ๋ํธ ์ฝ๋๋ก ๊ตฌ์ฑ๋ ์์คํ ์ ์ฒด ์๋น์ค์ ํจ์จ์ ์ด๊ณ ์ผ๊ด๋ ๋์์ธ์ ์ ์ฉํ ์ ์๋๋ก ๋์์ค๋ค.๋์์ธ ์์น, ์คํ์ผ ๊ฐ์ด๋,
๋ชจ.์.๋ฅ.๋ค ๊ณต๋ถ ์ค ์ต์ ๋ ์ฒด์ด๋ ์ฐ์ฐ์ ๋๋ถ์ ์ ์ฉํ๊ฒ ํด๊ฒฐํ ์ ์ด ์๊ธฐ๋ ํ๊ณ ์์๋ถ๋ฉด ์ดํ TypeError๋ฅผ ๋ฐฉ์งํ๊ธฐ๋ ์ข์ ๊ฑฐ ๊ฐ์ ๊ฐ์ง๊ณ ์๋ค.์ขํญ์ ?.์ ๋ถ์ฌ ์ค๋ค.ES11์์ ๋์ ๋์๋ค.a?.b ์ขํญ์ ํผ์ฐ์ฐ์๊ฐ null์ด๊ฑฐ๋ undefined์ธ ๊ฒฝ์ฐ
'm'๊ณผ "rn"์ด ๋ชจ์์ด ๋น์ทํ๊ฒ ์๊ธด ์ ์ ํ์ฉํด ๋ฌธ์์ด์ ์ฅ๋์ ํ๋ ค๊ณ ํฉ๋๋ค. ๋ฌธ์์ด rny_string์ด ์ฃผ์ด์ง ๋, rny_string์ ๋ชจ๋ 'm'์ "rn"์ผ๋ก ๋ฐ๊พผ ๋ฌธ์์ด์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.1 โค rny_strin
๊ทธ๋์ ๋ฐฐ์ ๋ Hook์ ์ด์ฉํด ๊ณผ์ ๋ฅผ ํธ๋ ํ์์ ๊ณผ์ ๋ฅผ ์งํํ๋ค.json ํ์ผ์ ์ด์ฉํด REST API ์๋ฒ๋ฅผ ๊ตฌ์ถํด ์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค.์ ์ญ์ ์ค์นํด ์ค๋ค.React ์ฑ ํ์ผ ๋ด์ ์ค์นํ๋ฉด ์ ๋๋ก ์๋ํ์ง ์์ ์ ์๋ค.data ํด๋๋ก ์ด๋ ๋ค \--port 30
๋ฌธ์์ด์ ๋ฐ๋ผ ๋ค์๊ณผ ๊ฐ์ด ๋ ์์ ํฌ๊ธฐ๋ฅผ ๋น๊ตํ๋ ค๊ณ ํฉ๋๋ค.๋ ์๊ฐ n๊ณผ m์ด๋ผ๋ฉด">", "=" : n >= m"<", "=" : n <= m">", "!" : n > m"<", "!" : n < m๋ ๋ฌธ์์ด ineq์ eq๊ฐ ์ฃผ์ด์ง๋๋ค. ine
Custom Hooks, ์ฝ๋ ๋ถํ ์ ๋ํด ํ์ตํ๋ค.๊ฐ๋ฐ์๊ฐ ์ค์ค๋ก ์ปค์คํ ํ Hook์ ์๋ฏธํ๋ค. \- ์ด๋ฅผ ์ด์ฉํด ๋ฐ๋ณต๋๋ ๋ก์ง์ ํจ์๋ก ๋ฝ์๋ด์ด ์ฌ์ฌ์ฉํ ์ ์๋ค. ์ฃผ๋ก ์ฌ๋ฌ url์ fetchํ ๋, ์ฌ๋ฌ input์ ์ํ ์ํ ๋ณ๊ฒฝ ๋ฑ ๋ฐ๋ณต๋๋ ๋ก์ง์ ๋์ผํ
๐ ๋ง์น๋ฉฐ
React์ ๋ํด ์ข ๋ ์ฌํ์ ์ธ ๋ถ๋ถ์ ํ์ตํ๋ค.React๋ UI์ ์ํ๋ฅผ ์ถ์ ํ๊ณ ๋ณํ๊ฐ ์ผ์ด๋ ์์๋ค์ ๋น ๋ฅด๊ฒ ์ ๋ฐ์ดํธํ ์ ์๋๋ก ๊ฐ์ DOM์ด๋ผ๋ ๊ฐ์์ DOM ๊ฐ์ฒด๋ฅผ ํ์ฉํ๋ค.๊ฐ์ DOM์ด ์๊ธฐ๊ฒ ๋ ์ด์ ๋ ์ด์ DOM์ผ๋ก ๋ถํฐ ๊ฑฐ์ฌ๋ฌ ์ฌ๋ผ๊ฐ์ผํ๋ค.๋ฌธ์ ๊ฐ์ฒด