๐ 4์ฅ, ๋ณ์
1
๐ ๋ฐฐ์ด ๋ด์ฉ ๋ฐ ๊ธฐ์ตํ๊ณ ์ถ์ ๋ด์ฉ
๋ณ์
๋ฆฌํฐ๋ด(10,20)๊ณผ ์ฐ์ฐ์(+)์ ์๋ฏธ๋ฅผ ์๊ณ ์ฝ๋๋ฅผ ํ๊ฐ(30)ํ์ฌ ํํ์(10+20)์ ์๋ฏธ๋ฅผ ํ์ฑํ ์ ์์ด์ผ ํ๋๋ฐ CPU๊ฐ ์ฐ์ฐํด์ ๋ง๋ค์ด ๋ธ ๊ฐ์ ๋ณ์์์ด ์ฌ์ฌ์ฉ์ ํ ์ ์๋ค. ์ฌ์ฌ์ฉํ ๋ ค๋ฉด ๊ทธ ๋ฉ๋ชจ๋ฆฌ์ฃผ์์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ๋ฐ์ ์๋๋ฐ ๊ทธ๊ฒ์ด ์๋ณ์์ธ ๋ณ์๋ฅผ ํตํด ์ ๊ทผํ ์ ์๋ค.
๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ํตํด ๊ฐ์ ์ง์ ์ ๊ทผํ๋ ๊ฒ์ ์น๋ช ์ ์ธ ์ค๋ฅ๋ฅผ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ์ ์๋ฐ์คํฌ๋ฆฝํธ์์๋ ์ง์ ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ์ ์ด๋ฅผ ํ์ฉํ์ง ์์
๋ณ์๋ ๊ฐ์ ์ ์ฅํ๊ธฐ ์ํ ๊ธฐ์ต๊ณต๊ฐ์ด๋ฉฐ ๊ฐ์ ์์น๋ฅผ ๊ฐ๋ฆฌํค๋ ์์ง์ ์ธ ์ด๋ฆ์ด๋ค.
์๋ณ์
- ๋ณ์์ด๋ฆ์ ์๋ณ์๋ก๊ณ ๋ ํ๋ฉฐ, ์๋ณ์๋ ์ด๋ค ๊ฐ์ ๊ตฌ๋ณํด์ ์๋ณํ ์ ์๋ ๊ณ ์ ํ ์ด๋ฆ์ ์๋ฏธํ๋ค.
- ์๋ณ์๋ ๊ฐ์ด ์๋๋ผ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ๊ธฐ์ตํ๊ณ ์๋ค.
๋ณ์ ์ ์ธ
๊ฐ์ ์ ์ฅํ๊ธฐ ์ํ ๋ฉ๋ชจ๋ฆฌ๊ณต๊ฐ์ ํ๋ณดํ๊ณ ๋ณ์ ์ด๋ฆ๊ณผ ํ๋ณด๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฃผ์๋ฅผ ์ฐ๊ฒฐํด์ ๊ฐ์ ์ ์ฅํ๊ฒ ์ค๋นํ๋ ๊ฒ์ด๋ค.
๊ฐ๋จํ ๋งํด์, ๋ณ์๋ฅผ ์์ฑํ๋ ๊ฒ์ ์๋ฏธํ๋ค.
๋ณ์๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ฐ๋์ ์ ์ธ์ด ํ์ํ๋ค.
- let, const, var ํค์๋๋ฅผ ์ฌ์ฉํ๋ค.
ํค์๋๋ JS์ฝ๋๋ฅผ ํด์ํ๊ณ ์คํํ๋ JS ์์ง์ด ์ํํ ๋์์ ๊ท์ ํ ์ผ์ข ์ ๋ช ๋ น์ด์ด๋ค.
๋ณ์๋ฅผ ์ ์ธํ๊ณ ๊ฐ์ ํ ๋นํ์ง ์์๋ค๋ฉด Undefined๊ฐ์ด ์๋ฌต์ ์ผ๋ก ํ ๋น์ด ๋์ด ์ด๊ธฐํ๋ฅผ ํ๋ค. (=JS์ ํน์ง)
๋ณ์ ์ ์ธ์ 2๋จ๊ณ
์ ์ธ ๋จ๊ณ: ๋ณ์ ์ด๋ฆ์ ๋ฑ๋กํ์ฌ JS์์ง์ ๋ณ์์ ์กด์ฌ๋ฅผ ์๋ฆผ
์ด๊ธฐํ ๋จ๊ณ: ๊ฐ์ ์ ์ฅํ๊ธฐ ์ํด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ๋ณด, ์๋ฌต์ ์ผ๋ก Undefined๋ฅผ ํ ๋นํด ์ด๊ธฐํ
๋ณ์์ด๋ฆ ๋ฐ ๋ชจ๋ ์๋ณ์๋ ์คํ ์ปจํ ์คํธ์ ๋ฑ๋ก๋๋๋ฐ, ์คํ ์ปจํ ์คํธ๋ JS์์ง์ด ์์ค์ฝ๋๋ฅผ ํ๊ฐํ๊ณ ์คํํ๊ธฐ ์ํด ํ์ํ ํ๊ฒฝ์ ์ ๊ณตํ๊ณ ์ฝ๋์ ์คํ๊ฒฐ๊ณผ๋ฅผ ์ค์ ๋ก ๊ด๋ฆฌํ๋ ์์ญ์ด๋ค. ์คํ ์ปจํ ์คํธ๋ฅผ ํตํด์ ์๋ณ์์ ์ค์ฝํ๋ฅผ ๊ด๋ฆฌํ๋ค.
์ด๊ธฐํ๋ ๋ณ์๊ฐ ์ ์ธ๋ ์ดํ ์ต์ด๋ก ๊ฐ์ ํ ๋นํ๋ ๊ฒ์ ์๋ฏธํ๋ค.
- ์ด๊ธฐํ ๋จ๊ณ๋ฅผ ๊ฑฐ์น์ง ์์ผ๋ฉด ํ๋ณด๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฐ๋ ๊ธฐ ๊ฐ์ด ์์ ์ ์๋ค. ์ด๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด์ var ํค์๋๋ ์๋ฌต์ ์ผ๋ก ์ด๊ธฐํ๋ฅผ ์ํํ์ฌ ์ฐ๋ ๊ธฐ ๊ฐ์ ๋ฐฉ์งํ๋ค.
๋ณ์๋ฅผ ์ ์ธํ์ง ์์ผ๋ฉด ReferenceError๊ฐ ๋ฐ์ํ๋ค. (=๋ฑ๋ก๋ ์๋ณ์๋ฅผ ์ฐพ์ ์ ์์ ๋ ๋ฐ์ํ๋ ์๋ฌ)
๋ณ์ ์ ์ธ์ ์คํ ์์ ๊ณผ ๋ณ์ ํธ์ด์คํ
- ๋ณ์ ์ ์ธ์ด ์์ค์ฝ๋๊ฐ ํ ์ค์ฉ ์์ฐจ์ ์ผ๋ก ์คํ๋๋ ์์ , ์ฆ ๋ฐํ์์ด ์๋๋ผ ๊ทธ ์ด์ ๋จ๊ณ์์ ๋จผ์ ์คํ๋๋ค. (=๋ณ์ ํธ์ด์คํ )
- ์์ค์ฝ๋์ ์ด๋์ ์๋ ์๊ด์์ด ๋ค๋ฅธ ์ฝ๋๋ ๋จผ์ ์คํ๋๋ JS์ ํน์ง
- ๋ณ์ ์ ์ธ๋ฌธ์ด ์ฝ๋์ ๋งจ ์๋ก ๋์ด ์ฌ๋ ค์ง ๊ฒ์ฒ๋ผ ๋์ํ๋ JS์ ๊ณ ์ ์ ํน์ง์ ๋ณ์ ํธ์ด์คํ ์ด๋ผ๊ณ ํ๋ค.
- ๋ชจ๋ ์ ์ธ๋ฌธ์ ๋ฐํ์ ์ด์ ๋จ๊ณ์์ ๋จผ์ ์คํ๋๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ์๋ณ์๋ ํธ์ด์คํ ๋๋ค.
๊ฐ์ ํ ๋น
๋ณ์ ์ ์ธ๊ณผ ๊ฐ์ ํ ๋น์ ํ๋์ ๋ฌธ์ผ๋ก ๋จ์ถ ํํํด๋ ๋๊ฐ์ ๋ฌธ์ผ๋ก ๋๋์ด ๊ฐ๊ฐ ์คํ
1
var date = 27;
- ๋ณ์ ์ ์ธ: ๋ฐํ์ ์ด์ ์ ์คํ
- ๊ฐ์ ํ ๋น: ๋ฐํ์์ ์คํ
!!๋ณ์์ ๊ฐ์ ํ ๋นํ ๋ ์ด์ ๊ฐ Undefined๊ฐ ์ ์ฅ๋์ด ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ด๊ธฐํ ํ๋ ๊ฒ์ด ์๋๋ผ, ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ๋ณดํ๊ณ ๊ทธ๊ณณ์ ํ ๋น ๊ฐ์ ์ ์ฅํ๋ค.
๊ฐ์ ์ฌํ ๋น
- ๊ฐ์ ์ฌํ ๋น ํ ์ ์์ด์ ๋ณ์์ ์ ์ฅ๋ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค๋ฉด ๋ณ์๊ฐ ์๋๋ผ ์์์ด๋ค.
1 2 3
var date=27; //๋ณ์๋ฅผ ์ ์ธํ๋ฉดUndefined๋ฅผ ๊ฐ๋ฆฌํค๊ณ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ๋ณดํ์ฌ 27์ ์ ์ฅ date=28; //๊ฐ์ ์ฌํ ๋น ํ์์ง๋ง 27์ด ์ ์ฅ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ์๋ ์๋ก์ด ๊ณต๊ฐ์ ํ๋ณดํ๊ณ 28์ ์ ์ฅํ๊ณ ๊ฐ๋ฅดํด //ํ์ ๊ฐ๋น์ง ์ฝ๋ ํฐ์ ์ํด ์ฌ์ฉ๋์ง ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํด์ ํจ. ๋จ, ๋ฉ๋ชจ๋ฆฌ์์ ์ธ์ ํด์ ๋ ์ง๋ ์์ธก๋ถ๊ฐ
์ธ๋งค๋์ง๋ ์ธ์ด์ ๋งค๋์ง๋ ์ธ์ด (๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๋ฐฉ์์ ์ฐจ์ด)
- ์ธ๋งค๋์ง๋๋ ๊ฐ๋ฐ์๊ฐ ๋ช ์์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๊ณ ํด์ (EX. C์ธ์ด)
- ๋งค๋์ง๋ ์ธ์ด๋ ๊ฐ๋ฐ์๊ฐ ์ง์ ์ ์ธ ๋ฉ๋ก๊ธฐ ์ ์ด ํ์ฉํ์ง ์์(EX. JS)
- ์ธ๋งค๋์ง๋ ์ฅ์ ๊ณผ ๋จ์ : ๊ฐ๋ฐ์์ ์ญ๋์ ๋ฐ๋ผ ์ต์ ์ธ ์ฑ๋ฅ ํ๋ณด๊ฐ๋ฅํ๋ค๋ ์ฅ์ ๊ณผ ์ญ๋์ด ๋ฎ๋ค๋ฉด ์น๋ช ์ ์ค๋ฅ๋ฅผ ์์ฐํ ๊ฐ๋ฅ์ฑ์ด ์๋ค๋ ๋จ์
- ๋งค๋์ง๋ ์ฅ์ ๊ณผ ๋จ์ : ๊ฐ๋ฐ์ ์ญ๋๊ณผ ์๊ด์์ด ์ด๋ ์ ๋ ์ผ์ ํ ์์ฐ์ฑ ํ๋ณด ๊ฐ๋ฅํ ์ฅ์ ๊ณผ ์ฑ๋ฅ์ ์ธ ๋ฉด์์ ์ด๋ ์ ๋ ์์ค์ด ์๋ค๋ ๋จ์
์๋ณ์ ๋ค์ด๋ฐ ๊ท์น
์๋ณ์๋ ํน์๋ฌธ์๋ฅผ ์ ์ธํ ๋ฌธ์, ์ซ์, _, $ ํฌํจ๊ฐ๋ฅ
์๋ณ์๋ ํน์๋ฌธ์๋ฅผ ์ ์ธํ ๋ฌธ์, _, $๋ก ์์ํด์ผํ๋ฉฐ ์ซ์๋ก ์์ ๋ถ๊ฐ๋ฅ
์์ฝ์ด๋ ์๋ณ์๋ก ์ฌ์ฉ๋ถ๊ฐ
JS๋ ๋์๋ฌธ์ ๊ตฌ๋ณ๊ฐ๋ฅ
๋ค์ด๋ฐ ์ปจ๋ฒค์
1 2 3 4 5 6 7 8 9
var firstName; //camelCase var first_name; //snake_case var FirstName; //PascalCase var strFirstName; //typeHungrianCase var $elem = document.getElementById('myId'); //DOM๋ ธ๋ var observarble$ = fromeEvent(document, 'click'); //RxJS ์ต์ ๋ฒ๋ธ
1
โ๏ธ ์ฝ์ ์๊ฐ
๋ณ์์ ํ ๋น๊ณผ ์ฌํ ๋น์ ๋ํด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ํ ๋น ๋ฐฉ์์ ๋ํด ํ์ตํ๊ฒ ๋์๋ค. ๊ธฐ์กด์ ์๊ณ ์๋ ๋ด์ฉ์ด์์ง๋ง, ์ด๊ธฐํ์ ํ ๋น์ ํ๋์ ๋ฌธ์ผ๋ก ์์ฑํ์ ๋๋ ๋๋จ๊ณ๋ก ๋๋์ด ์คํํ๋ค๋ ์ ์ ์๊ณ ์์๋ค. ๋ํ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ ์กด์ฌ๋ฅผ ์๊ณ ์์๋ค. ์ด๋ฒ ๋ณ์ ๋จ์์ ๋ณต์ตํ๋ฉด์ โํ์ต์ ํ๋๋ผ๋ ํ๋๋ฅผ ์ ํํ๊ฒ ์์โ๋ผ๋ ์๊ฐ์ ๊ฐ์ง๊ฒ ๋์๋ค.
1
โ ๊ถ๊ธํ ๋ด์ฉ์ด๋ ์ ์ดํด๋์ง ์๋ ๋ด์ฉ
- ์์