npm ํ๋ก์ ํธ ์์ฑ
Pseudo Code ์๋ ์ฝ๋
ํ์ด ํ๋ก๊ทธ๋๋ฐ(์ง ์ฝ๋ฉ)์ ๋ง ๊ทธ๋๋ก ํ์ด(์ง)๊ณผ ํจ๊ป ํ๋ก๊ทธ๋๋ฐํ๋ ๊ฒ์ ๋งํ๋ค. ํ์ด ํ๋ก๊ทธ๋๋ฐ์ ํตํด ์ปค๋ฎค๋์ผ์ด์ ๋ฅ๋ ฅ์ ํฅ์์ํค๊ณ ํ์ ํ๋ ๋ฐฉ๋ฒ์ ์ตํ ์ ์๋ค.ํ์ด ํ๋ก๊ทธ๋๋ฐ์ ์ ์์ผ ๋ฐฉ๋ฒ๋ก ์ ํ ์ค์ ํ๋๋ผ๊ณ ๋ ํ ์ ์๋ค.์ฉ๊ธฐ Courage : ์ฉ๊ธฐ๋ฅผ ๊ฐ
ํ๋ก๊ทธ๋๋ฐ = ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ณ์ = ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ๋ฉ๋ชจ๋ฆฌ = ๋ฐ์ดํฐ ๋ณด๊ดํจ๋ณด๊ดํจ์ ํฌ๊ธฐ๋ ๋์ผํ๋ค.๋ณด๊ดํจ์ ์ด๋ฆ = ๋ณ์๋ณ์๋ฅผ ํตํด ๋ฐ์ดํฐ ์ฌ์ฉ = ์ฌํ์ฉ๋ฐฐ์ด, ๊ฐ์ฒด, ํจ์์ ๊ฐ์ ๋ณต์กํ ๋ฐ์ดํฐ๋ ํฌํจํ๋ค.๋ณ์๋ ๊ฐ์ ํฌํจํ๋ ๊ฒ์ด์ง ๊ฐ ์์ฒด๊ฐ ์๋๋ค.Javascr
์กฐ๊ฑด๋ฌธ์ ๊ดํด Boolean ํ์ ์ ๋ํ ์ดํด๊ฐ ํ์ํ๋ค.์กฐ๊ฑด๋ฌธ์ ์ด๋ค ์กฐ๊ฑด์ ๋ํด ํ๋ณํ๋ ๊ธฐ์ค(์ฐธ์ธ์ง ๊ฑฐ์ง์ธ์ง)์ ๋ง๋๋ ๊ฒ์ด๋ค.์กฐ๊ฑด๋ฌธ์๋ ๋ฐ๋์ ๋น๊ต ์ฐ์ฐ์(Comparison Operator)๊ฐ ํ์ํ๋ค.
๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํด ๋ฌธ์ ํด๊ฒฐํ๊ธฐ
๊ฐ๊ฑฐ๋ ๋น์ทํ ์ฝ๋๋ฅผ ์ฌ๋ฌ ๋ฒ ์คํ์์ผ์ผ ํ ๊ฒฝ์ฐ ์ฐ๋ ๊ตฌ๋ฌธ๋ฐ๋ณตํ ๋ด์ฉ์ ์ค๊ดํธ ๋ธ๋ก(block) ์์ ๋ฃ์ด์ค๋ค.๋ฐ๋ณตํ ์กฐ๊ฑด์ ์ด๊ธฐํ, ์กฐ๊ฑด์, ์ฆ๊ฐ๋ฌธ ์์ผ๋ก ๋ฃ์ด์ค๋ค.๋ฐ๋ณตํ ์กฐ๊ฑด ์ค ์ด๊ธฐํ, ์ฆ๊ฐ๋ฌธ์ ๋ฐ๋ก, ์กฐ๊ฑด์๋ง ๊ดํธ ์์ ๋ฃ์ด์ค๋ค.for๋ฌธ๊ณผ ๋๊ฐ์ด ๋์ํ๋ค.์ด๊ธฐ
HTML์ ๋งํฌ์ ์ธ์ด์ด๋ค.์น ํ์ด์ง์ ๊ตฌ์กฐ๋ฅผ ํํํ๋ค.HTML์ ํ๊ทธ๋ค์ ์งํฉ์ด๋ค.ํธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ค.์๋งจํฑ(semantic) ํ๊ทธ๋ฅผ ์ ์ ํ ์๋ฏธ์ ๋ง๊ฒ ์ฌ์ฉํ์ฌ์ผ ํ๋ค.Opening tag์ Closing tag๊ฐ ์์ ์ด๋ฃฌ๋ค.Self-closing tag๋ Clo
๋ง์ , ๋บ์ , ๊ณฑ์ , ๋๋์ ๊ณผ ๊ฐ์ ์ํ์ ๊ธฐ๋ณธ ์ฐ์ฐ์๋ถํฐ ์์ํด์์ข ๋ ๋ณต์กํ๊ณ ์ฌํ๋ ์ฐ์ฐ์๊น์ง ํ๊ตฌํ๊ณ ์ ๋ฆฌํด๋ณด์.์ฐ์ฐ์๊ฐ ์ฐ์ฐ์ ์ํํ๋ ๋์์ธ์(argument)๋ผ๋ ์ฉ์ด๋ก ๋ถ๋ฆฌ๊ธฐ๋ ํ๋ค.MDN ์ฐธ๊ณ ์๋ฃ๊ฐ์ ๊ธฐํธ์ผ ๋ ๋จํญ ์ฐ์ฐ์ด ์ฐ์ ์์๊ฐ ๋๋ค.
ํจ์ returnCityNameWithLove์ ์ธ์์ ๋ฌธ์์ด์ ์ ๋ ฅํด ํธ์ถํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๊ฐ์ ๋ณ์ cityName์ ํ ๋นํ๊ธฐ
์ ๋ ฅ๋ ์์ ๋๋จธ์ง ๊ฐ์ ๋ฐ๋ผ ๊ฐ๊ฐ์ ๋ง๋ ๋ฌธ์์ด ๋ฉ์ธ์ง ๋ฐํํ๊ธฐ5๋ก ๋๋์ด ๋จ์ด์ง๋ฉด 'Ping'7๋ก ๋๋์ด ๋จ์ด์ง๋ฉด 'Pong'5์ 7๋ก ๋ชจ๋ ๋๋์ด ๋จ์ด์ง๋ฉด 'PingPong'5์ 7๋ก ๋๋์ด ๋จ์ด์ง์ง ์์ผ๋ฉด 'RingRing'100๋ช ์ด ์ ์์ธ ๋ฒ์ค๊ฐ ์๋ค.์ฌ๋์๋ฅผ
CSS๋ ์คํ์ผ๋ง์ ์ํ ๋๊ตฌ์ด๋ค.๋๋ฌธ์ ๋ ๋ฆฝ์ ์ผ๋ก ๊ธฐ๋ฅํ์ง ์๋๋ค.๋ฐ๋์ HTML์ด ์์ด์ผ๋ง ๋์ํ ์ ์๋ค.์ปจํ ์ธ ์ ๋ฐฐ์น์ ์์น (๋ ์ด์์ ๋์์ธ)์ต์ํ์ ํ์ดํฌ๊ทธ๋ํผUI(User Interface) / UX(User experience)์ ๋ ฌ์ด๋ ๋ฐฐ์์ ๋ํ ๊ฐ๊ฐU
HTML๊ณ์ฐ๊ธฐ ํํ ๊ตฌ์กฐํJavascriptdocument.querySelector()addEventListener()event.targettarget.classListtextContent ์์ฑํจ์ ํธ์ถCSSUI / UXflex boxbackground-image: l
์ธ ๊ฐ์ ๋๋ฌผ ์ด๋ฆ์ ์ ๋ ฅ๋ฐ์ ๊ฐ์ฅ ๊ธด ๋จ์ด์ ๋๋ฌผ ์ด๋ฆ๊ณผ ์ด๋ฆ ๊ธธ์ด๋ฅผ ๋ฆฌํด'์ด๋ฆ์ด ์ ์ผ ๊ธด ๋๋ฌผ์ {} ๊ธ์์ธ {}์ ๋๋ค'์ด๋ฆ์ ์์ด ๋จ์ด ๊ธฐ์ค๐ก Solution
CLI(Command-Line Interface) List
macOS Terminal Themes ๊นํ ์ ์ฅ์์์ ํ์ผ ๋ด๋ ค๋ฐ๊ธฐ
๋์์ธ ์ ๋ฌด๋ ๊ฐ์ข ๋ ํฌํธ๋ฅผ ์งํํ๋ค ๋ณด๋ฉด ๋ฌด์ํ ๋ฒ์ ์ด ํ์ํ๊ฒ ๋๋ค.๋ฒ์ ์ ํ์ธํ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์ผ๋ช ์ ๋ ์ง๋
๋ฐฐ์ด์ ๋จ์ผ ๋ณ์์ ์์๊ฐ ์๋ ์ฌ๋ฌ ๊ฐ๋ค์ ์ ์ฅํ ์ ์๋ค.์๋ฐ์คํฌ๋ฆฝํธ์ ์ฐธ์กฐ ์๋ฃ๋ ์ฌ๋ฌ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ์ ์ฅ์์ ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ด๋ค.๋ฐฐ์ด์ ์์๋ ์ธ๋ฑ์ค๋ผ๊ณ ํ๊ณ 0๋ถํฐ ์์ํ๋ค.indexOf, includes
key: value์ ์์ผ๋ก ๋ฌถ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ๊ฐ ๋ชจ์ ๋ณตํฉ ๋ฐ์ดํฐ๊ฐ์ฒด์ ํฌํจ๋ ๋ฐ์ดํฐ ํ๋(์ด๋ฆ๊ณผ ๊ฐ์ ์; key: value)๋ฅผ ๊ฐ๋ฆฌ์ผ ๊ฐ์ฒด์ ํ๋กํผํฐ๋ผ๊ณ ํ๋ค.๊ฐ์ฒด์ ๊ฐ์ ์กฐํํ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง๊ฐ ์๋ค.notation ๋ฐฉ์์ ๋ฐ๋ผ ๊ทธ ๊ฐ๊ณผ ์๋ฏธ๊ฐ ๋ค๋ฅด๋ค.ํค
CSS Selector
์ค์ฝํ๋ ํจ์ ๋๋ ์ฝ๋ ๋ธ๋ก์ ๊ธฐ์ค์ผ๋ก ์์ชฝ๊ณผ ๋ฐ๊นฅ์ชฝ์ผ๋ก ๋๋๋ ๊ฒ์ ๋งํ๋ค.์์ชฝ์ ์๋ ์ค์ฝํ๋ ๋ฐ๊นฅ์ชฝ์ ์ค์ฝํ์ ์๋ ๋ณ์์ ์ ๊ทผํ ์ ์์ง๋ง๋ฐ๊นฅ์ชฝ์ ์๋ ์ค์ฝํ๋ ์์ชฝ์ ์ค์ฝํ์ ์๋ ๋ณ์์ ์ ๊ทผํ ์ ์๋ค.์ค์ฝํ๋ ์ค์ฒฉ์ด ๊ฐ๋ฅํ๋ค.๊ฐ์ฅ ๋ฐ๊นฅ์ชฝ์ ์๋ ์ค์ฝํ๋
Javascript Koans Sprint
์์ด๋์ ํน์ ๊ธฐํธ๋ฅผ ์ ๋ ฅํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ์ํ๊ธฐ์์ด๋๋ ์๋ฌธ, ์ซ์๋ง ๊ฐ๋ฅํฉ๋๋ค.display: none ๊ฐ์ ๊ฐ์ง hide ํด๋์ค๋ฅผ ์์ฑํ๊ณ ์ ์ฉํดํด๋์ค๊ฐ ์ ์ฉ๋๋ฉด ๋ฌธ๊ตฌ๊ฐ ํฌํจ๋ div ์์๋ฅผ ์๋ณด์ด๊ฒ ํ๊ณ ํด๋์ค๊ฐ ์ ์ฉ๋์ง ์์ผ๋ฉด ๋ฌธ๊ตฌ๊ฐ ํฌํจ๋ div ์์๋ฅผ ๋ณด์ด
์ด๋ฒคํธ ๊ฐ์ฒด
ํน์ ๋ ผ๋ฆฌ(ํจ์, ์ฐธ์ธ์ง ๊ฑฐ์ง์ธ์ง)์ ๋ฐ๋ผ ๋ถ๋ฅํน์ ๋ ผ๋ฆฌ(ํจ์)์ ๋ฐ๋ผ ๋ค๋ฅธ ์์๋ก ์ง์ ํน์ ๋ ผ๋ฆฌ(ํจ์)์ ๋ฐ๋ผ ์ํ๋ ํ๋์ ํํ๋ก ์์ถ
ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ํ Javascript ์คํ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฆฌ์กํธ์๋ ํฌ๊ฒ 3๊ฐ์ง๋ก ๋ถ๋ฅํ ์ ์๋ ํน์ง์ด ์๋ค.HTML / CSS / JS๋ก ๋๋ ์ ๊ฐ๋ฐํ๋ ๊ฒ์ด ์๋ํ๋์ ํ์ผ์ ๋ช ์์ ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋งํ๋ค.์ด๋ JSX๋ฅผ ํ์ฉํด์ ํ๋ก๊ทธ๋๋ฐํ๋ค.ํ๋์
์๋ฒ๋ก๋ถํฐ ์์ ํ ์๋ก์ด ํ์ด์ง๋ฅผ ๋ถ๋ฌ์ค์ง ์๊ณ ํ์ด์ง ๊ฐฑ์ ์ ํ์ํ ๋ฐ์ดํฐ๋ง ๋ฐ์ ๊ทธ ์ ๋ณด๋ฅผ ๊ธฐ์ค์ผ๋ก ํ์ฌ ํ์ด์ง๋ฅผ ์ ๋ฐ์ดํธํจ์ผ๋ก์จ์ฌ์ฉ์์ ์ํตํ๋ ์น ์ดํ๋ฆฌ์ผ์ด์ ์ด๋ ์น ์ฌ์ดํธ๋ฅผ ๋งํ๋ค.์ฑ์ ๊ท๋ชจ๊ฐ ์ปค์ง๋ฉด ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ์ด ๋๋ฌด ์ปค์ง๊ณ ๊ฒ์ ์์ง ์ต์ ํ(SEO)๊ฐ ์ข
Props
๐ฆ Variables 1. ๋ณ์ unicorn์ ์ ์ธํ๊ธฐ let ํค์๋๋ฅผ ์ฌ์ฉํด ๋ณ์ unicorn์ ์ ์ธํ๊ธฐ 2. ๋ณ์ unicorn์ ๋ฌธ์์ด ํ ๋นํ๊ธฐ ์ ์ธ๋ ๋ณ์ unicorn์ ๋ฌธ์์ด ํ ๋นํ๊ธฐ ๐ฌ Expressions ํํ์(Expression)์
ํจ์๋ช ์ ์๋ฌธ์๊ฐ ์๋ ์นด๋ฉ ์ผ์ด์ค(camelCase)๋ฅผ ์ฌ์ฉํ๋ค."" ๋ฐ์ดํ๊ฐ ์๋ {} ์ค๊ดํธ ์์ ์ ๋ ฅํ๋ค.๊ณต์๋ฌธ์
props spread๊ณต์๋ฌธ์
Object Object.entries() Object.fromEntries() map()๊ณผ fromEntries()์ ๊ฒฐํฉ
๋ฌด์์ด ๋ฌธ์ ์๋์ง์ด๋ป๊ฒ ๋ ๋ฐ์ ์ํฌ์ง๋ฌธ์ ๋ ์ด๋ป๊ฒ ํด๊ฒฐํ ๊ฒ์ธ์ง์๊ธฐ ๊ฐ๊ดํ์ง์ฌ์ ๋ด์์
๋ฐ์ดํฐ์ ๊ธฐ๋ฅ์ ํ ๊ณณ์ ๋ฌถ์ด์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ผ๋ก,ํ๋์ ๋ชจ๋ธ์ด ๋๋ ์ฒญ์ฌ์ง(blueprint)์ ๋ง๋ค๊ณ ๊ทธ ์ฒญ์ฌ์ง์ ๋ฐํ์ผ๋ก ํ๋ ๊ฐ์ฒด(object)๋ฅผ ๋ง๋๋ ํ๋ก๊ทธ๋๋ฐ ํจํด์ ๋งํ๋ค.singleton ํจํด์ ๋จ ํ๋์ ๊ฐ์ฒด๋ฅผ ๋ง๋ ๋ค์ํํธ์จ์ด ๋์์ธ ํจํด์์ ์ฑ๊ธํด ํจ
์ ๋ ฅ๊ฐ๊ณผ ์ถ๋ ฅ๊ฐ ์ ์ํ๊ธฐ๋ฌธ์ ๋ฅผ ์ชผ๊ฐ๊ณ ๊ฒฝ์ฐ์ ์ ๋๋๊ธฐ๋ฌธ์ ๋ฅผ ๋ ์ด์ ์ชผ๊ฐค ์ ์๋ ๊ฒฝ์ฐ์ ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ๋ก ๋๋๊ธฐ๊ฐ์ฅ ํด๊ฒฐํ๊ธฐ ์ฌ์ด ๋ฌธ์ ๋ถํฐ ํด๊ฒฐํ๊ธฐ -> ์ฌ๊ท์ ๊ธฐ์ด(base case)์ฌ๊ท์ ๊ธฐ์ด๋ ์ฌ๊ท์ ํ์ถ ์กฐ๊ฑด์ ๊ตฌ์ฑํ๋ค๋จ์์๋ ๋ณต์กํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ
JSON.stringify() ๋ ๊ฐ์ด๋ ๊ฐ์ฒด๋ฅผ JSON ๋ฌธ์์ด๋ก ๋ณํํ๋ค.
์๋ฃ ๊ตฌ์กฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ์ ์ฅํ๊ณ ํจ์จ์ ์ผ๋ก ํ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ ๊ฒ์ด๋ค.์คํ์ ๋ฐ์ดํฐ๋ฅผ ์์๋๋ก ์๋ ์๋ฃ ๊ตฌ์กฐ์ด๋ค.๊ฐ์ฅ ๋จผ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ๊ฐ์ฅ ๋์ค์ ์ฌ์ฉ๋๊ณ (FILO)๊ฐ์ฅ ๋์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ๊ฐ์ฅ ๋จผ์ ์ฌ์ฉ๋๋ค. (LIFO)ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅ๋
[x] useInput [x] useTabs [x] useTitle [x] useClick [x] useConfirm [x] usePreventLeave [ ] useBeforeLeave [ ] useFadeIn [ ] useNetwork [ ] useScroll
transition ์ฌ์ฉ์์ ๋จ์ถ css ๋ฌธ๋ฒ
a ํ๊ทธ์ target ์์ฑ์ ๋งํฌ๋ ๋ฌธ์๊ฐ ์ด๋ฆด ์์น๋ฅผ ๋ช ์ํ๋ค.๊ฐ ๊ฐ์ ์ ์๋ ๋ค์๊ณผ ๊ฐ๋ค.a ํ๊ทธ์ rel ์์ฑ์ ํ์ฌ ๋ฌธ์์ ๋งํฌ๋ ๋ฌธ์ ์ฌ์ด์ ์ฐ๊ด ๊ด๊ณ๋ฅผ ๋ช ์ํ๋ค.๊ฐ ๊ฐ์ ์ ์๋ ๋ค์๊ณผ ๊ฐ๋ค.a ํ๊ทธ์ target ์์ฑ์์ "\_blank"๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐre
์๊ณ๋ ํ์ด๋จธ๋ฅผ ๊ตฌํํ ๋ ๋ค์๊ณผ ๊ฐ์ด ํํํ ์ผ์ด ๋ง๋ค.00์ 00๋ถ 00์ดpadStart()๋ฅผ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๊ตฌํํ ์ ์๋ค.padStart()๋ ์ฒซ ๋ฒ์งธ ์ธ์๋ก ๊ธธ์ด๋ฅผ, ๋ ๋ฒ์งธ ์ธ์๋ก ๋์ฒดํ ๋ฌธ์๋ฅผ ๋ฐ์์๋ฌธ์์ด์ ์์์ ๋์ฒดํ ๋ฌธ์๋ก ์ฑ์ ์ฃผ์ด์ง ๊ธธ์ด๋ฅผ
gender ๋์ ?๋ฅผ ์ถ๊ฐํด์ ํด๊ฒฐํ ์ ์๋ค.
์ฃผ์ด์ง ์ ์์ 2์ง์์์ ๊ฐ์ฅ ํฐ BinaryGap์ ๊ตฌํ๋ ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ์ ๋๋ค.BinaryGap์ด๋ 1๋ก ๋๋ฌ์ธ์ธ 0์ ๊ธธ์ด๋ฅผ ๋งํฉ๋๋ค.์๋ฅผ ๋ค์ด, ์ ์ 1041์ 2์ง์๋ 10000010001์ ๋๋ค. ์ฌ๊ธฐ์ BinaryGap์ ๊ธธ์ด๋ ๊ฐ๊ฐ 5์ 3์ด ๋ฉ๋๋ค.
์ฃผ์ด์ง ์ซ์ ๋ฐฐ์ด A๋ฅผ K๋ฒ๋งํผ ์์์ ์ธ๋ฑ์ค๋ฅผ ํ ์นธ์ฉ ์ด๋ํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ์ ๋๋ค. ๋ฐฐ์ด์ ๋ง์ง๋ง ์์๋ ๋งจ ์์ผ๋ก ์ด๋ํฉ๋๋ค.์ฑ์ ๊ฒฐ๊ณผ ๋น ๋ฐฐ์ด์ด ์ฃผ์ด์ก์ ๋์ ์์ธ ์ฒ๋ฆฌ๋ฅผ ํ์ง ์์ ๋ฐํ์ ์๋ฌ๊ฐ ๋ฐ์ํ์ต๋๋ค.(input์ด (\[], 0)์ผ
ํ์ ๊ธธ์ด์ ์ซ์ ๋ฐฐ์ด์์ ์ง์ ์ด๋ฃจ์ง ์๋ ์์๋ฅผ ๊ตฌํ๋ ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ์ ๋๋ค.์๋ฅผ ๋ค์ด, ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ๋ฐฐ์ด์ด ๋ค์๊ณผ ๊ฐ๋ค๋ฉด\[9, 3, 9, 3, 9, 7, 9]์ง์ ์ด๋ฃจ์ง ์๋ ์์ 7์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.์์ ๊ฐ์ด ์์ฑํ์ ๋ ์ฑ์ ๊ฒฐ๊ณผ๋์๊ฐ ๋ณต์ก๋์์
๊ฐ๊ตฌ๋ฆฌ์ ํ์ฌ ์์น X, ์ด๋ํ ์์น Y, ํ๋ฒ์ ๋ธ ์ ์๋ ๊ฑฐ๋ฆฌ D๊ฐ ์ฃผ์ด์ง๋ฉด Y ๋๋ Y ๋ณด๋ค ๋ฉ๋ฆฌ ๋๋ฌํ๊ธฐ ์ํด ์ต์ ๋ช ๋ฒ๋ง์ ์ด๋ํ ์ ์๋ ์ง ๊ตฌํ๋ ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ์ ๋๋ค.
N ๊ธธ์ด์ ๋ฐฐ์ด์ 1๋ถํฐ N+1๋งํผ์ ์์๊ฐ ํฌํจ๋ฉ๋๋ค. ์ด๋ ๋ฐฐ์ด์์ ๋น ์ง ์ซ์๋ฅผ ๊ตฌํ๋ ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ์ ๋๋ค.์๋ฅผ ๋ค์ด, ๊ธธ์ด๊ฐ 4์ธ ๋ฐฐ์ด์ 1๋ถํฐ 5 ์ฌ์ด์ ์ซ์๊ฐ ๋ค์ด๊ฐ๋๋ค.(์ซ์๋ค์ ์์๋๋ก ์ ๋ ฌ๋์ด ์์ง ์์ ์ ์์ต๋๋ค.)\[2, 3, 1, 5] ์ด
์ซ์ ๋ฐฐ์ด์์ P๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์ด์ ๋๋๊ณ ๊ฐ ๋๋ ๋ถ๋ถ์ ํฉ์ ๊ฐ์ฅ ์์ ์ฐจ์ด๋ฅผ ๋ฆฌํดํ๋ ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ์ ๋๋ค.์๋ฅผ ๋ค์ด,\[3, 1, 2, 4, 3] ๋ค์๊ณผ ๊ฐ์ ๋ฐฐ์ด์์ P์ ์ธ๋ฑ์ค๊ฐ 1์ด๋ผ๊ณ ํ ๋,๋ฐฐ์ด์ \[3] \[1, 2, 4, 3]์ผ๋ก ๋๋ฉ๋๋ค.๊ฐ
๋ชจ๋ ๋ฆฌ์กํธ ์ปดํฌ๋ํธ๋ ์ฌ๋ฌ ์ข ๋ฅ์ ์๋ช ์ฃผ๊ธฐ ๋ฉ์๋๋ฅผ ๊ฐ์ง๋ค.์ด ๋ฉ์๋๋ฅผ ์ค๋ฒ๋ผ์ด๋ฉ(๊ธฐ์กด์ ์์๋ฐ์ ๋ฉ์๋๋ฅผ ์ฌ์ ์)ํ์ฌ ํน์ ์์ ์ ์ฝ๋๊ฐ ์คํ๋๋๋ก ์ค์ ํ ์ ์๋ค.์๋ช ์ฃผ๊ธฐ๋ ํฌ๊ฒ 3๊ฐ์ง๋ก ๋๋ ์ ์๋ค.์ปดํฌ๋ํธ์ ์ธ์คํด์ค๊ฐ ์์ฑ๋์ด DOM์ ์ฝ์ ๋ ๋๋ฅผ ๋งํ๋ ๋ง
๋ณ์, ํจ์, ํด๋์ค์ ๊ฐ์ ๋ชจ๋ ์๋ณ์๋ ์ ์ธ๋ ์์น์ ๋ฐ๋ผ ์ฐธ์กฐํ ์ ์๋ ์ ํจ ๋ฒ์๊ฐ ๊ฒฐ์ ๋๋ค. ์ด๋ฅผ ์ค์ฝํ๋ผ๊ณ ํ๋ค. ์ฆ, ์ค์ฝํ๋ ์๋ณ์๊ฐ ์ ํจํ ๋ฒ์๋ฅผ ๋งํ๋ค.ํจ์์์ ๋งค๊ฐ๋ณ์๋ ํด๋น ํจ์ ๋ด๋ถ์์๋ง ์ฐธ์กฐ๊ฐ ๊ฐ๋ฅํ๋ค. ์ด๊ฒ์ ๋งค๊ฐ๋ณ์์ ์ค์ฝํ๊ฐ ํจ์ ๋ด๋ถ๋ก