1. const, immutable, final์ ์ฐจ์ด
- const (์๋ฐ์คํฌ๋ฆฝํธ):
- ๋ณ์์ **"์ฐธ์กฐ๊ฐ(์ฃผ์)"**์ด ๊ณ ์ ๋จ. ์ฐธ์กฐํ๋ ๋ฐ์ดํฐ๋ ๋ณ๊ฒฝ ๊ฐ๋ฅ.
- ์: ๊ฐ์ฒด๋ ๋ฐฐ์ด ๋ด๋ถ์ ๊ฐ์ ์์ ๊ฐ๋ฅ.
- immutable (๋ถ๋ณ):
- ๋ฐ์ดํฐ ์์ฒด๋ฅผ ๋ณ๊ฒฝํ ์ ์๋๋ก ์ค๊ณ.
- ์: ๋ฌธ์์ด(String)์ด๋ ์ผ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ ๊ณตํ๋ ๋ถ๋ณ ๊ฐ์ฒด.
- final (์๋ฐ):
- ๊ฐ์ด๋ ์ฐธ์กฐ ์์ฒด๋ฅผ ๋ณ๊ฒฝํ ์ ์์.
- ์ ์ธ ํ ์์ ๋ถ๊ฐ๋ฅ.
2. undefined์ null์ ์ฐจ์ด
- undefined:
- ๋ณ์๊ฐ ์ ์ธ๋์์ง๋ง ๊ฐ์ด ํ ๋น๋์ง ์์ ์ํ.
- "์์ ๊ฐ์ด ์๋ ์ํ(์๋ ์ํ)".
- null:
- ๊ฐ๋ฐ์๊ฐ ์๋์ ์ผ๋ก "๊ฐ์ด ์์"์ ๋ช ์.
- "๊ฐ์ด ์๊ธฐ๋ก ์ ํ ์ํ."
3. ์ผํญ ์ฐ์ฐ์
- ๊ตฌ์กฐ:
javascript๋ณต์ฌํธ์ง์กฐ๊ฑด ? ์ฐธ์ผ ๋์ ๊ฐ : ๊ฑฐ์ง์ผ ๋์ ๊ฐ;
- ์กฐ๊ฑด๋ฌธ์ ์งง๊ฒ ํํํ ๋ ์ฌ์ฉ.
- ์:
javascript๋ณต์ฌํธ์งlet age = 18; let message = age >= 20 ? "์ฑ์ธ์ ๋๋ค." : "๋ฏธ์ฑ๋ ์์ ๋๋ค."; console.log(message); // "๋ฏธ์ฑ๋ ์์ ๋๋ค."
4. typeof์ instanceof
- typeof:
- ๋ฐ์ดํฐ์ **ํ์ (์๋ฃํ)**์ ํ์ธ.
- ์: typeof 42 → "number", typeof "hello" → "string".
- typeof null์ด "object"๋ก ์ถ๋ ฅ๋๋ ๊ฒ์ ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ฒ๊ทธ.
- instanceof:
- ๊ฐ์ฒด๊ฐ ํน์ ์์ฑ์๋ ํด๋์ค์ ์ธ์คํด์ค์ธ์ง ํ์ธ.
- ์:
javascript๋ณต์ฌํธ์งlet arr = []; console.log(arr instanceof Array); // true console.log(arr instanceof Object); // true
5. Math.random()
- 0 ์ด์ 1 ๋ฏธ๋ง(0 ≤ ๊ฐ < 1)์ ๋๋คํ ์์๋ฅผ ์์ฑ.
- ํน์ ๋ฒ์์์ ๋์๋ฅผ ๋ง๋ค๋ ค๋ฉด ๊ณฑ์
๊ณผ ์ ์ ๋ณํ ํ์:
javascript๋ณต์ฌํธ์งlet rand = Math.floor(Math.random() * 6); // 0๋ถํฐ 5 ์ฌ์ด์ ์ ์
6. ํ๋ฆ ์ ์ด (์กฐ๊ฑด๋ฌธ, ๋ฐ๋ณต๋ฌธ, switch)
์กฐ๊ฑด๋ฌธ
- if, else if, else๋ก ์กฐ๊ฑด์ ๋ฐ๋ผ ์คํ ์ฝ๋ ๊ฒฐ์ :
javascript๋ณต์ฌํธ์งif (age >= 20) { console.log("์ฑ์ธ์ ๋๋ค."); } else { console.log("๋ฏธ์ฑ๋ ์์ ๋๋ค."); }
switch๋ฌธ
- ๊ฐ์ ๋ฐ๋ผ ์คํํ ์ฝ๋ ๋ถ๊ธฐ:
javascript๋ณต์ฌํธ์งlet num = 2; switch (num) { case 1: console.log("1์ ๋๋ค."); break; case 2: console.log("2์ ๋๋ค."); break; default: console.log("๊ฐ์ด ์์ต๋๋ค."); }
๋ฐ๋ณต๋ฌธ
- while๊ณผ for๋ฅผ ์ฌ์ฉํด ํน์ ์กฐ๊ฑด ๋์ ๋ฐ๋ณต:
javascript๋ณต์ฌํธ์งlet count = 0; while (count < 5) { console.log(count); count++; } for (let i = 0; i < 5; i++) { console.log(i); }
continue์ break
- continue: ํ์ฌ ๋ฐ๋ณต์ ๊ฑด๋๋ฐ๊ณ ๋ค์ ๋ฐ๋ณต ์คํ.
- break: ๋ฐ๋ณต๋ฌธ์ ์ฆ์ ์ข
๋ฃ.
javascript๋ณต์ฌํธ์งfor (let i = 0; i < 10; i++) { if (i % 2 === 0) continue; // ์ง์๋ ๊ฑด๋๋ console.log(i); // ํ์๋ง ์ถ๋ ฅ }
7. ๊ธฐํ
๋ฌดํ ๋ฃจํ์ Math.random() ํ์ฉ
- ๋ฌดํ ๋ฃจํ(while (true))์์ ๋๋ค ์กฐ๊ฑด์ผ๋ก ๋ฃจํ ์ข
๋ฃ:
javascript๋ณต์ฌํธ์งwhile (true) { if (Math.random() > 0.5) { console.log("HEAD!"); break; } else { console.log("TAIL ใ ใ "); } }
8. ๋ฐ๋ณต๋ฌธ์ ํ์ฉํ ๋ฐฐ์ด ์ํ
- for๋ฌธ์ผ๋ก ๋ฐฐ์ด ์์๋ฅผ ์ํ:
javascript๋ณต์ฌํธ์งlet fruits = ["์ฌ๊ณผ", "๋ฐ๋๋", "์ค๋ ์ง"]; for (let index = 0; index < fruits.length; index++) { console.log(fruits[index]); }
์ค๋ ๋ฐฐ์ด ๊ตํ
- ๋จ์ถ ํ๊ฐ, ํ์ ํ์ธ (typeof, instanceof), ๋๋ค ์์ฑ ๋ฑ ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ธฐ์ด์ ์ธ ํ๋ฆ๊ณผ ์ ์ด์ ๋ํด ํ์ตํ์ด.
- ์ค์ํ ๊ฒ์ ์ฝ๊ธฐ ์ฌ์ด ์ฝ๋์ ๊ฐ๋ ์ฑ์ ์ ์งํ๋ ์ต๊ด์ด์ผ!