- ๋ฐฐ์ด ๋ด์ฉ์ ๋ณต์ตํ ์ดํ ํ ๋ณ๋ก ๋ฉด์ ์ ์งํํ๊ธฐ ์ํ ๊ฐ๋ ์ ๋ฆฌ
HTML
์ด ๋ฌด์์ธ๊ฐ์?
hyper text markup language๋ ์นํ์ด์ง๋ฅผ ๋ง๋ค๊ธฐ ์ํ ์ธ์ด
์ ๋๋ค. ๋ฐ๋ผ์HTML์ ํตํด ํ์ด์ง์ ๊ตฌ์กฐ๋ฅผ ์ก์์ค๋๋ค.
- hyper text๋ '๋งํฌ๋ก ์ฐ๊ฒฐ๋ ๋ฌธ์'์ด๋ฉฐ markup language๋ โ์ด๋ ๊ฒ ๋ณด์ฌ์คโ์ ๋ํ ์ง์๋ฅผ ์๋ฏธํฉ๋๋ค.
- โ ๋ฐ๋ผ์
HTML์ด๋ ์นํ์ด์ง์ ๋ด์ฉ์ ๋ธ๋ผ์ฐ์ ์๊ฒ ๋ ๋๋ง์ ํด์ฃผ๋ผ๊ณ ๋งํฌ์ ํ๋ ๊ฒ
๋งํฉ๋๋ค.
HTML ํ์ผ์ ํ์ ๊ตฌ์กฐ
๋ ์ด๋ป๊ฒ ๋๋์?
- HTML ํ์ผ์ ํ์ ๊ตฌ์กฐ๋ ํฌ๊ฒ
html, head, title, body ํ๊ทธ
๊ฐ ์์ต๋๋ค.
<!DOCTYPE html>
๋ ํ๊ทธ๋ ์๋ HTML ํ์ผ ๊ฐ์ฅ ์๋จ์ ์์นํ ์ ์ธ๋ฌธ์ผ๋ก ์ฌ์ฉ ์ค์ธ ํ์ผ์ด ๋ฌด์จ ๋ฒ์ ์ HTML์ ์ฌ์ฉํ๋์ง ๋ธ๋ผ์ฐ์ ์๊ฒ ์๋ ค์ฃผ๋๋ฐ ์ญํ ์ ํฉ๋๋ค.<html>
ํ๊ทธ๋<!DOCTYPE html>
์ ์ธ๋ฌธ์ ์ ์ธํ ๋ค๋ฅธ ๋ชจ๋ HTML ์์์ ์ปจํ ์ด๋๋ก, ๋ชจ๋ ํ๊ทธ๋ค์ ์ด๊ณ ๋ซ๋<html>
ํ๊ทธ๋ก ๊ฐ์ธ์ค๋๋ค. ๋ธ๋ผ์ฃผ์ด๊ฐ<html>
๋ฅผ ๋ง๋๋ ์๊ฐ html์ด ์์๋์ ์ธ์งํด ์์๋ฅผ ๊ทธ๋ฆด ์ค๋น๋ฅผ ํฉ๋๋ค.<head>
ํ๊ทธ๋ ํญ์<html>
ํ๊ทธ ๋ค์์ ์์นํด HTML ๋ฌธ์์ head ๋ถ๋ถ์ ๋ํ๋ด๊ธฐ ์ํด ์ฌ์ฉ๋์ด ์ฌ์ดํธ์ ์ ๋ชฉ, ์ค๋ช , ๋ถ๊ฐ ์ ๋ณด, ๊ธฐ์ ์ ๋ด์ฉ๋ฑ์ ๋ด์ผ๋ฉฐ<head>
ํ๊ทธ ์์ ํฌํจ๋ ํ๊ทธ๋ค์ ์น ํ์ด์ง์๋ ํ์๋์ง ์์ต๋๋ค.<title>
ํ๊ทธ๋<head>
ํ๊ทธ ๋ด๋ถ์ ์กด์ฌํ๋ฉฐ ๋ธ๋ผ์ฐ์ ํญ์ ๋ณด์ด๋ ํ์ด์ง ์ด๋ฆ์ผ๋ก ํ๊ทธ์ ์ฝํ ์ธ ๋ด์ฉ์ด ์น ๋ธ๋ผ์ฐ์ ํญ์ ์ถ๊ฐ๋๋ค.<body>
ํ๊ทธ๋ ํญ์<head>
ํ๊ทธ ๋ค์์ ์์นํ์ฌ HTML ๋ฌธ์์ ์ฃผ์ ๋ด์ฉ์ ๋ณด์ฌ์ฃผ๋ฉฐ ์น ํ์ด์ง์ ํ์๋๋ฉฐ ์ค์ ํ๋ฉด์ ๋ณด์ฌ์ง๊ธฐ ์ํ ๊ฐ์ข ํ๊ทธ๋ค์ ๋ด๋ ์ญํ ์ ํฉ๋๋ค.
<img alt="profile" src="์ด๋ฏธ์ง ์ฃผ์"></img>
์์ alt
, src
๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ง์ ๋ฌด์์ผ๊น์?img
ํ๊ทธ์ ํ์ ์์ฑ์?
- img ํ๊ทธ๊ฐ ๊ฐ์ง๊ณ ์๋
์์ฑ(attribute)
์ผ๋ก ํ๊ทธ์ ์ข ๋ฅ๋ง๋ค ์์ฑ์ด ๋ฌ๋ผ์ง๋๋ค.
alt๋, alternative๋ก img ํ๊ทธ๊ฐ ์ด๋ฏธ์ง๋ฅผ ๋ก๋ํ์ง ๋ชปํ์์ ์ ๋ณด์ฌ์ง๊ฒ๋์ด ์ด๋ฏธ์ง๋ฅผ ๋์ฒดํ๋ ์ด๋ฆ์ ์๋ฏธ
ํ๋ ์์ฑ์ด๊ณ ,src, source๋ก ์ธ๋ถ ์์์ ํน์ URL, ์ฆ ์์น๋ฅผ ๋ช ์ํ๊ธฐ ์ํด ์ฌ์ฉ
๋์ด img ํ๊ทธ์๋ ์ฃผ๋ก์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ฌ ์ฃผ์ ํน์ ๊ฒฝ๋ก๋ฅผ ๊ฐ
์ผ๋ก ์ ์ต๋๋ค.
CSS
๋ ๋ฌด์์ธ๊ฐ์?
- HTML๋ก ๊ตฌ์กฐ๋ฅผ ์ก์ ์นํ์ด์ง๋ฅผ
(cascading style sheet) CSS
๋ก ์คํ์ผ์ ๊พธ๋ฉฐ์ค๋๋ค.`
- cascading์ ๊ณ๋จ์, ํ๋ฌ๋ด๋ฆฌ๋ ๋ป์ผ๋ก CSS๋ ๋ถ๋ชจ ์์๋ก๋ถํฐ ์์์์๋ก ๋จ๊ณ๋ณ๋ก ์คํ์ผ์ด ์ ์ฉ๋๋ ์๋ ๋ฐฉ์์ ์ง๋๋๋ค.
CSS๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ, ์ต์ 2๊ฐ์ง
์ด์ ๋ง์ํด ์ฃผ์ธ์.
- CSS๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ 3๊ฐ์ง๋ก
์ฒซ์งธ, ํ๊ทธ ๋ด๋ถ์ style ์์ฑ ์ ์ฉ,
๋ ์งธ, head ํ๊ทธ ๋ด๋ถ์ link ํ๊ทธ๋ฅผ ํ์ฉํด CSSํ์ผ ๋ก๋ํ์ฌ ์ ์ฉ
์ ์งธ, HTML ํ์ผ ๋ด์ style ํ๊ทธ ๋ด๋ถ์ CSS ์ ์ฉ์ด ์กด์ฌํฉ๋๋ค.
- ์ฒซ ๋ฒ์งธ๋ ํ๊ทธ ๋ด์ style ์์ฑ์ ์ฌ์ฉํด ์ํ๋ ์คํ์ผ์ ํ๋กํผํฐ์ ๊ฐ์ ์ง์ ํด ํ๊ทธ์ ๋ฐ๋ก ์ ์ฉํ๋ ๊ฒ์ด๋ฉฐ
- ๋๋ฒ์งธ๋ ํค๋ ํ๊ทธ ๋ด๋ถ์ link ํ๊ทธ๋ฅผ ๋ง๋ค์ด href ์์ฑ์ ๊ฐ์ผ๋ก ํด๋น css ํ์ผ๋ช ์ ๋ฃ์ด์ฃผ์ด ํ์ผ์ ๋ก๋ํ๋ ๋ฐฉ๋ฒ์ด๋ฉฐ
- HTML์ head ํ๊ทธ ๋ด๋ถ์ style ํ๊ทธ๋ฅผ ๋ง๋ค์ด ๋ด๋ถ ์์ฑํ์ฌ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
โ ๊ฐ์ฅ ๊ถ๊ณ ํ๋ ๋ฐฉ์์ ๋ ๋ฒ์งธ ๋ฐฉ์์ผ๋ก CSS๋ฅผ HTML๋ก๋ถํฐ ๋ก๋ํ์ฌ HTML๊ณผ CSS๋ฅผ ๋ถ๋ฆฌ์ํฌ ์ ์์ต๋๋ค. ์ด๋ก์ HTML์ ๋ฌธ์์ ๊ตฌ์กฐ๋ฅผ ์ํ ๋ด์ฉ๋ค๋ง ์์ฑํ๊ณ CSS์๋ ๊ทธ ๊ตฌ์กฐ๋ฅผ ๊พธ๋ฉฐ์ฃผ๊ธฐ ์ํ ๋ด์ฉ์ ์์ฑํจ์ผ๋ก์ HTML๊ณผ CSS์ ์ญํ ์ ์์ ํ ๋ถํ ํ์ฌ ๋ณด๋ค ๋ช ํํ๊ฒ ๊ฐ๊ฐ์ ์์ ์ ์งํํ ์ ์์ต๋๋ค.
margin
, padding
, border
์ ์์ญ์ ์ค๋ช
ํด ์ฃผ์ธ์.
- HTML์ ์์๋ CSS์ ์์ฑ์ ๋ช ๊ฐ์ง ๋ค๊ณ ์๋๋ฐ ์์์ ๋ฌด์กฐ๊ฑด ๋ค์ด๊ฐ๋ ์์ฑ๋ค์ด ๋ฐ๋ก
CSS BOX MODEL
์ ๋๋ค.CSS BOX MODEL
์ ๊ธฐ์ค์ผ๋ก ํ ๊ฐ์ ์์์๋ ๋ฐ๊นฅ์ชฝ๋ถํฐ ์์ชฝ๊น์งmargin-border-padding-contents ์ด ๋ค ๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ
๋ฉ๋๋ค.
- ๋ง์ฝ ์์์ contents ์์ญ์ '์๋ '์ด๋ผ๋ contents๋ฅผ ๋ฃ๊ณ
border
๋ฅผ ์ฃผ๋ฉด contents์ ์ธ๋ถ์ ํ ๋๋ฆฌ๊ฐ ์๊น๋๋ค.padding
์ border ๋ด์ ์๊ธฐ๋ ๊ณต๊ฐ์ ์๋ฏธํํ๊ณmargin
์ border ์ธ๋ถ์ ์๊ธฐ๋ ๊ณต๊ฐ์ผ๋กmargin
์ผ๋ก ์์์ ์์๊ฐ์ ๊ฐ๊ฒฉ์ ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
block
, inline
, inline-block
์ ์ฐจ์ด์ ์ ์ค๋ช
ํด ์ฃผ์ธ์.
block ์์
๋ p ํ๊ทธ์ฒ๋ผํ๋ฉด์ ๊ฐ๋ก ๊ณต๊ฐ์ ์ ๋ถ ์ฐจ์งํ๋ ์์
๋ฅผ ์๋ฏธํฉ๋๋ค.
block ์์
๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ก์ ๋ชจ๋ ๊ณต๊ฐ์ ๋ชจ๋์ฐจ์งํ์ฌ ๊ทธ ์์ ๋ค๋ฅธ ์์๊ฐ ๋ถ์ง ๋ชปํฉ๋๋ค.inline ์์
๋์์ ์ ์ฝํ ์ธ ๊ฐ๋ก ํฌ๊ธฐ ๋งํผ๋ง ๊ฐ๋ก ๊ณต๊ฐ์ ์ฐจ์งํ๋ ์์
๋ฅผ ์๋ฏธํฉ๋๋ค.
inline ์์
์์ ๋ ๋ค๋ฅธ inline ์์๊ฐ ์ค๊ฒ๋๋ฉด ์์ ๋๋ํ ๋ฐฐ์น๋ฉ๋๋ค.
block
์์ 3๊ฐ, inline
์์ 3๊ฐ๋ฅผ ๊ฐ๊ฐ ์ค๋ช
ํด ์ฃผ์ธ์.
block ์์
์๋ ๋ํ์ ์ผ๋ก divํ๊ทธ, pํ๊ทธ, ๊ฐ์ข Semantic tag๋ค์ด ์กด์ฌํ๋ฉฐinline ์์
์๋ span ํ๊ทธ, a ํ๊ทธ, img ํ๊ทธ๋ค์ด ์์ต๋๋ค.
- ๋ชฉ๋ก๊ณผ ๊ด๋ จ๋ ํ๊ทธ์๋ ๋ชฉ๋ก์ ์์ฑ์ ์ํด ๊ฐ์ฅ ์ธ๋ถ์์ ๊ฐ์ธ์ฃผ๋
ul ํ๊ทธ
์ol ํ๊ทธ
๊ฐ ์กด์ฌํฉ๋๋ค.
ul ํ๊ทธ
๋ unorder๋ก ์์๊ฐ ํ์๋์ง ์๊ณ ๋ท์ผ๋ก ๋ํ๋ด๋ ๋ชฉ๋ก์ ์์ฑํ๋ฉฐol ํ๊ทธ
๋ order๋ก ์์๊ฐ ํ์๋์ด ๋ํ๋๋ ๋ชฉ๋ก์ ์์ฑํฉ๋๋คul ํ๊ทธ
,ol ํ๊ทธ
์ ๋ด๋ถ์li ํ๊ทธ
๋ฅผ ์ฌ์ฉํ์ฌ ํ๊ทธ ๋ด๋ถ์ ์ฝํ ์ธ ๋ก list์ ๋ชฉ๋ก์ ์ ์ด์ค ์ ์์ต๋๋ค.
- ํ ์ด๋ธ ํ ๊ทธ๋ ๊ฐ์ฅ ์ธ๋ถ์์ ๊ฐ์ธ์ฃผ๋
table ํ๊ทธ
์ ํ์ ํํํ๋, table rowtr ํ๊ทธ
, ํ์ ์กด์ฌํ๋ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ํ๋ด๋ table datatd ํ๊ทธ
๊ฐ ์กด์ฌํฉ๋๋ค.td ํ๊ทธ
๋์ table ํ๊ทธ ๊ฐ์ฅ ์๋จ์<th> ํ๊ทธ
, head๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ ๊ฐ์ฅ ์๋จ์ ์๋ ์ ๋ชฉ ์์ญ์ฒ๋ผ ๊ฐ์ด๋ฐ ์ ๋ ฌ๊ณผ bold ์ฒ๋ฆฌ๋ ์์๋ฅผ ๋ฃ์ ์ ์์ต๋๋ค.- ํ ์ด๋ธ์ ๊ฐ ์์ญ header, body, footer์ ๋ช ์ํ๊ธฐ ์ํด
<tbody> ํ๊ทธ
,<thead> ํ๊ทธ
,<tfoot> ํ๊ทธ
๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
<tbody> ํ๊ทธ
๋ HTML ํ ์ด๋ธ์ ๋ด์ฉ ์ฝํ ์ธ ๋ค์,<tfoot> ํ๊ทธ
ํธํฐ ์ฝํ ์ธ ๋ค์,<thead> ํ๊ทธ
๋ ํค๋ ์ฝํ ์ธ ๋ค์ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ ๋ ์ฌ์ฉํฉ๋๋ค.rowspan ์์ฑ
์ ํ ๋ฐฉํฅ์ผ๋ก ํ ์ด๋ธ์ ๋ณํฉํ๊ธฐ ์ํดcolspan ์์ฑ
์ ์ด ๋ฐฉํฅ์ผ๋ก ํ ์ด๋ธ์ ๋ณํฉํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค. ๊ฐ์ผ๋ก ํฉ์น๊ณ ์ํ๋ ๊ฐฏ์๋ฅผ ์ซ์๋ก ๋ฃ์ด์ค๋๋ค.
input ํ๊ทธ
์textarea ํ๊ทธ
๊ฐ ์กด์ฌํํฉ๋๋ค.
input ํ๊ทธ
๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฒ์์ฐฝ๊ณผ ๊ฐ์ด ์ฌ์ฉ์๋ก๋ถํฐ ์ ๋ ฅ๋ฐ์ ์ ์๋ ์์๊ฐ ๋ง๋ค์ด์ง๋๋ค.- type ์์ฑ์ ํตํด ์ ๋ ฅ ๋ฐ์ ์์ฑ์ ์ ํด์ค๋๋ค.
- placeholder ์์ฑ์ ํตํด ์ ๋ ฅ์ฐฝ์ ์์์ ๊ฐ์ ํ ์คํธ๋ฅผ ๋์๋ง ํํ๋ก ๋ณด์ฌ์ค๋๋ค.
select ํ๊ทธ
์button ํ๊ทธ
๋ ์์ต๋๋ค.
select ํ๊ทธ
๋option ํ๊ทธ
์ ํจ๊ป ์ฐ์ฌ ์ต์ ๋ฉ๋ด๋ฅผ ์ ๊ณตํ๋ ์ปจํธ๋กค์ ์ ๊ณตํฉ๋๋ค.<button> ํ๊ทธ
๋ ํด๋ฆญ ๊ฐ๋ฅํ ๋ฒํผ์ ์ ๊ณตํฉ๋๋ค.
position
์์ฑ์ ๋ํด ์๋๋๋ก ์ค๋ช
ํด ์ฃผ์ธ์.
์์์ ์์น๋ฅผ ์ ํด์ค ์ ์๋ ์์ฑ์ผ๋ก position
์๋relative, absolute, fixed๊ทธ๋ฆฌ๊ณ static
์ด ์กด์ฌํฉ๋๋ค.
- static์ ๊ธฐ๋ณธ๊ฐ์ด๋ฉฐ
relative
๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ์์ฒด์ ์์น๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ง์ผ ์ ์๋๋ฐtop, bottom,left ,right์ ์์ฑ
์ ๊ฐ์ ํตํด ๊ฐ๊ฐ์ ์์น์์ ์ผ๋งํผ ๋จ์ด์ง๋์ง๋ฅผ ์ง์ ํ ์ ์๋ค.absolute
๋ ์์์ ๋ถ๋ชจ ์์์ position์ ๊ฐ์ด relative, absolute, fixed ์ค ํ๋์ธ ๊ฒฝ์ฐ์ ์์ ์ ๋ถ๋ชจ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ด๋ํฉ๋๋ค,fixed
๋ ๋ถ๋ชจ ์์์ ๋ฌด๊ดํ๊ฒ ๋ธ๋ผ์ฐ์ ์ ๋ทฐํฌํธ๋ฅผ ๊ธฐ์ค์ผ๋ก ์์๋ฅผ ์ด๋์์ผ ์์๋ฅผ ๊ณ ์ ์ํต๋๋ค.
- ์๋ฐ์คํฌ๋ฆฝํธ๋ ์น ํ์ด์ง ๋ด์์ ์ฌ์ฉ์์ ์ํตํ๊ธฐ ์ํด์ ์นํ์ด์ง์ ์ํธ์์ฉ์ ํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ์ธ์ด๋ก ํ์ด์ง๋ฅผ HTML์ผ๋ก ๊ตฌ์ฑ๋ ์ ์ ์ธ ์นํ์ด์ฆ๋ฅผ ๋์ ์ธ ์นํ์ด์ง๋ก ๋ง๋ค์ด ์ค๋๋ค.
let
, var
, const
๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๋ณ์๋ค์ ์ฐจ์ด์ ์ ๋ฌด์์ธ๊ฐ์?
- ๋ชจ๋ ๋ณ์๋ฅผ ์ ์ธ, ์์ฑํ๊ธฐ ์ํ ํค์๋๋ค๋ก var es5์ด์ ์ ๋์์ผ๋ฉฐ ์ด ํค์๋๋ฅผ ๊ฐ์ ํ๊ณ ์ ๋์จ ํค์๋๊ฐ let๊ณผ const ์ ๋๋ค.var ํค์๋๋ ๋ณ์์ ์ฐธ์กฐ ์ ํจ๋ฒ์ ์ค์ฝํ๋ฅผ ํจ์ ๋ธ๋ก์ ๊ฐ์ง๋ฉฐ var const๋ ํจ์ ๋ธ๋ก์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๋ํ var, let ๋ณ์๋ก ์ ์ธ ํ๋ฉด ๊ฐ์ ์ฌํ ๋น์ด ๊ฐ๋ฅํ๋ง const๋ ์์์ด๋ฏ๋ก ์ฌํ ๋น์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๋ง์ง๋ง์ผ๋ก var์ ๊ฒฝ์ฐ hoisting ๋ณ์๋ฅผ ์ด๋์ ์ ์ธํ๋์ง ์์น์ ์๊ด์์ด ์๋จ๋ถ๋ก ๋ณ์ ์ ์ธ์ ๋์ด์ฌ๋ ค์ง๋ ๊ฒ์ฒ๋ผ ๋์ํ์ฌ ์ ์ธํ๊ธฐ์ ์ ์ฐธ์กฐํ๊ฒ ๋๋ฉด undefined๊ฐ ๋์ค๊ณ const let์ ์ฐธ์กฐ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
- ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ฐ์ดํฐ ํ์ ์ข ๋ฅ๋ ํฌ๊ฒ ๊ธฐ๋ณธํ ์ฐธ์กฐํ์ผ๋ก ๋๋ ์ง๋ฉฐ ๊ธฐ๋ณธํ์๋ ์ซ์์ ๊ด๋ จ๋ ๋ฐ์ดํฐ์ธ number, ๋ฌธ์๋ฅผ ๋ด์ ์ ์๋ string, ์ฐธ๊ณผ ๊ฑฐ์ง์ ๋ํ๋ด๋ boolean๊ณผ ์ ์ธํ์ง ์์์ ์๋ฏธํ๋ undefined , ๊ฐ์ด ๋น์ด์์์ ์๋ฏธํ๋ null ๋ฑ์์์ผ๋ฉฐ ์ฐธ์กฐํ ๋ฐ์ดํฐ์ ๊ฐ์ฒด๊ฐ ํฌํจ๋๊ณ ๊ฐ์ฒด์ ํ์ ๋ถ๋ฅ๋ก ๋ฐฐ์ด, ํจ์, map, set ๋ฑ์ด ์กด์ฌํฉ๋๋ค.
- ํจ์์ ์ ์๋ ๋ณ์๋ก ๋ฐ์ง๋ฉด ์ ์ธ์ ํด๋นํ๊ณ ํธ์ถ์ ์ ์๋ด๋ฆฐ ํจ์๋ฅผ ์คํํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค
- ๋ฐ๋ผ์ ์ ์๋ ํจ์๋ฅผ ์์ฑํ๋ ๊ณผ์ ์ ์ผ๋ จ์ ๊ณผ์ ์ ๋ฌธ์ผ๋ก ๊ตฌํํ์ฌ ์ฝ๋ ๋ธ๋ก ๋ด๋ถ์ ๊ฐ์ธ๋ ๊ฒ์ด๊ณ ์คํ์ด๋ ์ด๋ ๊ฒ ์ ์๋ด๋ฆฐ ์ผ๋ จ์ ๋ฌธ๋ค์ ๊ณผ์ , ํจ์๋ฅผ ๋ถ๋ฌ ์คํํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
- Math.random ํจ์๋0-1๊น์ง ์ค์ ์ค ๋ฌด์์๋ก ๋ง๋ค์ด์ฃผ๋ ํจ์๋ก *๋ก ์ ์๋ฅผ ์ ๋ฌํ๋ฉด ํด๋น 0๋ถํฐ ํด๋น ์ ์๊น์ง ๋ฒ์๊ฐ ์๊ฒจ ๊ทธ ๋ฒ์ ์์ ํด๋น๋๋ ์ค์๋ฅผ ๋ฆฌํดํ๋ค.
- Math.max ๋ฐฐ์ด๋ก ์ ๋ฌํ๋ฉด ์ต๋๊ฐ์ Math.min์ ์ต์๊ฐ์ ๋ฆฌํดํ๋ค
- Math.floor ์์์ ๋ฌด์ ๊ฑด ๋ด๋ฆฐ ๊ฐ์ Math.ceil, ๋ชจ์กฐ๊ฑด ์ฌ๋ฆผ Math.round ์์์ ๋ฐ์ฌ๋ฆผ, Math.squr ์ ๊ณฑ์ ๊ฐ์ ๋ฆฌํดํ๋ค.
==
์ ===
์ ์ฐจ์ด์ ์ ์ค๋ช
ํด ์ฃผ์ธ์.
- ์ผ์น์ฐ์ฐ์ ===๋ ํ์ ๊น์ง ์ผ์นํด์ผ true๋ฅผ ๋ฐํํ๊ณ == ๋๋ฑ์ฐ์ฌ์๋ ๊ฐ๋ง ๊ฐ์๋ true๋ฅผ ๋ฐํํด ํ์ ๊น์ง ๋น๊ตํ์ง ๋ชปํ๋ค.
- ์กฐ๊ฑด๋ฌธ์ ํ์ค์ธ๊ณ์ ์กด์ฌํ๋ ๋ง์ ์ํฉ๋ค์ ๋ฐ๋ผ ๋ฐ์ํ๋ ๋ค์ ์ผ๋ค ํ๋ก๊ทธ๋จ์ผ๋ก ๊ตฌํ ํ๊ธฐ์ํด ๋ง๋ค์ด์ง ๋ฌธ๋ฒ์ผ๋ก , if๋ฌธ์ ํตํด ์ ํด์ง ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ค์ํ ๊ฒฐ์ ์ ๋ง๋ค์ด ๋์ผ๋ก์ ๋ณด๋ค ํ์ค์ธ๊ณ๋ฅผ ๋ชจ๋ธ๋ง ํ ์ ์์ต๋๋ค.
- ํจ์์ ์ธ์๋ ํจ์ ์ธ๋ถ์ ์ ์ธ๋ ๊ฐ๋ค์ ํจ์ ๋ด๋ถ์์ ์ฌ์ฉํ๊ธฐ ์ํจ์ ๋๋ค. ๋ฐ๋ผ์ ํจ์์ ์ธ์๋ก ๋ฐ์์จ ๊ฐ๋ค์ ํจ์ ๋ด๋ถ์์ ์ง์ญ ๋ณ์์ฒ๋ผ ์ฌ์ฉํ์ฌ ๋ณด๋ค ํจ์ ๋ด๋ถ์ ๋ณด๋ค ๋ค์ํ ๋ฌธ๋ค์ ๊ตฌ์ฑํ์ฌ ํจ์๋ฅผ ์ ์ ๋ด๋ฆฌ๊ณ ํธ์ถ ํ ์ ์๊ฒ๋ฉ๋๋ค.
- ์ง์ญ์ค์ฝํ๋ฅผ ๊ฐ๋ ์ง์ญ๋ณ์๋ฅผ ์์ฑํ๋๋ฐ ์์ด ๋งค์ฐ ์ ์ฉํด ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ๋ง๋๋๋ฐ ์์ด ์ค์ํ๋ค.
- ๋ฐฐ์ด์ ์ฌ์ค ๊ฐ์ฒด์ ํ ์ข ๋ฅ๋ก ๋ฐฐ์ด์ ์ผ๋ จ์ ์์๋ฅผ ๊ฐ์ง ๋ฐ์ดํฐ๋ค์ ๋์ดํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ์๋ฃ๊ตฌ์กฐ๋ก์ ๋ฐฐ์ด์ ์ฌ์ฉํ๋ฉด ์์ ๋ฐฐ์ด์ ์กด์ฌํ๋ ์์๋ค์ ๋ชจ๋ index ๊ฐ ์ฆ ์์๋ฅผ ๊ฐ์ง๊ธฐ ๋๋ฌธ์ ์์์ ๊ด๋ จ๋ ๋ฉ์๋๋ค์ ์ฌ์ฉํ ์๋ ์์ผ๋ฉฐ length ํ๋กํผํฐ ์ฆ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ํ์ฉํ ์์ ์ ์ฒ๋ฆฌํ ์ ๋ ์์ต๋๋ค.
- ๋ธ๋ผ์ผ ๋ ธํ ์ด์ ์ ์ฌ์ฉํด ๋ธ๋ผ์ผ ๋ด๋ถ์ ์ ๊ทผํ๊ณ ์ ํ๋ ๋ฐฐ์ด์ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๋ฃ์ด์ฃผ๋ฉด๋๊ณ ๋ง์ง๋ง ๋ฐฐ์ด์ ์์์๋ length -1์ ํ๊ฒ๋๋ฉด ์ ์ฒด ๋ฐฐ์ด์ ๊ฐฏ์ - 1์ ์ฆ ๋ฐฐ์ด์ ๋ง์ง๋ง์์์ ์ผ์นํ์ฌ ์ ๊ทผํ ์ ์์ต๋๋ค
- ๋ฐฐ์ด ๊ฐ์ฒด๋ ๋ค์ํ ๋ฉ์๋๋ค์ ์ง์ํ์ฌ ์ด๋ฅผ ์ฌ์ฉํ ์ ์๋๋ฐ ๋ํ์ ์ผ๋ก sort, forEach, filter, map, reduce ๋ฑ์ด ์๋๋ฐ,
- sort๋ ๋ฐฐ์ด์ ์ ์ ํ๊ฒ ์ ๋ ฌํด ์ ๋ ฌ๋ ๋ฐฐ์ด์ ๋ฐํํ๋๋ฐ ๋ฌธ์์ด์ ์ํ๋ฒณ์์ผ๋ก ๋์ง๋ง ์ซ์๋ฅผ ์ ๋ ฌํ๊ธฐ ์ํด์ sort๋ฉ์๋์ ์ธ์๋ก ์ ๋ ฌ ์์๋ฅผ ๋น๊ตํ๋ ๋น๊ตํจ์๋ฅผ ์ฝ๋ฐฑํจ์๋ก์ ์ ๋ฌํ์ฌ์ผํฉ๋๋ค
- forEach๋ ๋ฐฐ์ด์ ๊ฐ ์์๋ฅผ ์ํํ๋ฉด์ ์ํํด์ผํ ์ฒ๋ฆฌ๋ฅผ ์ธ์์ ์ฝ๋ฐฑํจ์๋ก ์ ๋ฌ๋ฐ์ ๋ฐ๋ณต ํธ์ถํฉ๋๋ค. ์ด๋ ์ฝ๋ฐฑํจ์์ ์ ๋ฌ๋ ์ธ์๋ ํ์ฌ๊ฐ , ์ธ๋ฑ์ค , ํจ์๋ฅผ ํธ์ถํ ๋ฐฐ์ด ์์ฒด์ธ this๋ฅผ ์ ๋ฌ๋ฐ์ ์ ์๋ค. ์ด๋ ์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์๋๋ค.
- filter ๋ฉ์๋๋ ๋ฐฐ์ด์ ๊ฐ ์์๋ฅผ ์ํํ๋ฉด์ ๊ฐ ์์์ ๋ํด์ ์ ๋ฌํ ์ฝ๋ฐฑํจ์์ ๋ฐํ๊ฐ true์ธ ์์๋ค๋ง๋ง ๊ตฌ์ฑ๋ ์๋ก์ด ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
- map ๋ฉ์๋๋ ๋ฐฐ์ด์ ๊ฐ์์๋ฅผ ์ํํ๋ฉด์ ๊ฐ ์์์ ๋ํด์ ์ ๋ฌํ ์ฝ๋ฐฑํจ์์ ๋ฐํ๊ฐ๋ค๋ก ๊ตฌ์ฑ๋ ์๋ก์ด ๋ฐฐ์ด์ผ ๋ฐํํ์ฌ
map
๊ณผ forEach
์ ์ฐจ์ด์ ์ ์ค๋ช
ํด ์ฃผ์ธ
- ๋๋ค ๋ฐฐ์ด์ ์์๋ฅผ ์ํํ์ง๋ง ๋ฉ์๋์ ์ธ์๋ก ์ ๋ฌํ ์ฝ๋ฐฑํจ์์ ใฑ๋ฆฌํด๊ฐ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด์ ๋ฐํํ๊ณ forEach๋ ์์๋ฅผ ์ํํ๋ฉฐ ๋ฐ๋ณตํด์ ํธ์ถํ๋๋ฐ ๊ทธ์น๋ค. ๋ฐ๋ณต๋ฌธ์ ๋์ฒดํ ์ ์๋ ๋ฉ์๋๊ณ map์ ์๋กญ๊ฒ ๋งคํ๋ ๋ฐฐ์ด์ ๋ฐํํด์ฃผ๋ ๋ฉ์๋์ด๋ค.
๊ฐ์ฒด๊ฐ ํ์ํ ์ด์ ๋ ๋ฌด์์ธ๊ฐ์?
๊ฐ์ฒด์ ๊ฐ์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํด ์ฃผ์ธ์.
๊ฐ์ฒด์ ๊ฐ์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ ๋ ๊ฐ์ ์ฐจ์ด์ ์
๋ํด ์ค๋ช
ํด์ฃผ์ธ์.
๊ฐ์ฒด์ ๊ฐ์ ์ถ๊ฐ, ์์ , ์ญ์ ํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํด ์ฃผ์ธ์.
Scope์ ๋ํด ์๋๋๋ก ์ค๋ช ํด ์ฃผ์ธ์.
ES6 ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด์ ๋ฌธ์์ด์ ์์ฑํ๋๋ฐ ๋ง์ ์ ์ฐ์ฑ์ ์ ๊ณตํฉ๋๋ค. ์ด์ ๋ํ ์๋ฅผ ๋ค ์ ์๋์?
- WeCode ๋ ธ์ ๊ฐ์ ๋ด์ฉ ์ค :)