All :L
Web(Front) - JavaScript ๊ฐ์ฒด ๋ณธ๋ฌธ
๋ฐ์ํ
๐ JavaScript ๊ฐ์ฒด
1๏ธโฃ ๊ฐ์ฒด
- ์ด๋ฆ๊ณผ ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋ ํ๋กํผํฐ์ ์งํฉ
- ๋ฌธ์์ด, ์ซ์, boolean, null, undefined๋ฅผ ์ ์ธํ ๋ชจ๋ ๊ฐ
- js ๊ฐ์ฒด : ํค์ ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋ ํ๋กํผํฐ๋ค์ ์งํฉ
- ์ ์ญ ๊ฐ์ฒด๋ฅผ ์ ์ธํ js ๊ฐ์ฒด๋ ํ๋กํผํฐ๋ฅผ ๋์ ์ผ๋ก ์ถ๊ฐํ๊ฑฐ๋ ์ญ์ ๊ฐ๋ฅ
- ํจ์๋ ์ผ๊ธ ๊ฐ์ฒด์ด๋ฏ๋ก ๊ฐ์ผ๋ก ์ฌ์ฉ X → ํ๋กํผํฐ์ ๊ฐ์ผ๋ก ํจ์ ์ฌ์ฉ ๊ฐ๋ฅ
- ํ๋กํ ํ์ ์ด๋ผ๋ ํน๋ณํ ํ๋กํผํฐ ํฌํจ
2๏ธโฃ ๊ฐ์ฒด ์์ฑ
- ๊ฐ์ฒด ๋ฆฌํฐ๋ด
- ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ
- {}๋ฅผ ์ฌ์ฉํด ๊ฐ์ฒด ์์ฑ
- {}๋ด์ 1๊ฐ ์ด์์ ํ๋กํผํฐ๋ฅผ ์ถ๊ฐํด ๊ฐ์ฒด ์์ฑ
- ์ฌ์ฉ ๋ฐฉ๋ฒ
- var obj = {};
- Object ์์ฑ์ ํจ์
- new ์ฐ์ฐ์์ Object ์์ฑ์ ํจ์ ํธ์ถํด ๋น ๊ฐ์ฒด ์์ฑ
- ๋น ๊ฐ์ฒด ์์ฑ ํ ํ๋กํผํฐ or ๋ฉ์๋ ์ถ๊ฐํด ๊ฐ์ฒด ์์ฑ
- ์ฌ์ฉ ๋ฐฉ๋ฒ
- var obj = new Object();
- ์์ฑ์ ํจ์
- ๋์ผํ ํ๋กํผํฐ๋ฅผ ๊ฐ๋ ๊ฐ์ฒด ์์ฑ ์
- ์ ๋ ๋ฐฉ๋ฒ์ ๋์ผํ ์ฝ๋๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ์์ฑ
- ์์ฑ์ ํจ์๋ฅผ ์ด์ฉํ๋ฉด ํ ํ๋ฆฟ(ํด๋์ค)์ฒ๋ผ ์ฌ์ฉํด ํ๋กํผํฐ๊ฐ ๋์ผํ ๊ฐ์ฒด ์ฌ๋ฌ ๊ฐ๋ฅผ ๊ฐ๋จํ ์์ฑ ๊ฐ๋ฅ
- ์ฌ์ฉ ๋ฐฉ๋ฒ
- ํจ์ ์ด๋ฆ์ ์ฒซ ๋ฌธ์ ๋๋ฌธ์
- ๋ฐ๋์
new
์ฐ์ฐ์๋ฅผ ๋ถ์ฌ ์คํ
- ํธ์ถ ์ ๋์ ์์
- ๋น ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด this์ ํ ๋น
- ํจ์ ๋ณธ๋ฌธ ์คํ
- this์ ์๋ก์ด ํ๋กํผํฐ ์ถ๊ฐํด this ์์
- this ๋ฐํ(default)
- ๋์ผํ ํ๋กํผํฐ๋ฅผ ๊ฐ๋ ๊ฐ์ฒด ์์ฑ ์
3๏ธโฃ ๊ฐ์ฒด ์์ฑ ๊ฐ ์กฐํ
- ๊ฐ์ฒด๋ dot(.)์ ์ฌ์ฉํ๊ฑฐ๋ ๋๊ดํธ([])๋ฅผ ์ฌ์ฉํด ์์ฑ ๊ฐ์ ์ ๊ทผ
- ๋๊ดํธ ๋ด์ ๋ค์ด๊ฐ๋ ํ๋กํผํฐ ์ด๋ฆ์ ๋ฐ๋์ ๋ฌธ์์ด์ด์ด์ผ ํจ
- ๊ฐ์ฒด์ ์๋ ์์ฑ์ ์ ๊ทผ ์ undefined ๋ฐํ
- ๊ฐ์ฒด ์์ฑ ๊ฐ ์กฐํ ํ ๋ || ์ฐ์ฐ์ ์ฌ์ฉ ๊ฐ๋ฅ
4๏ธโฃ ๊ฐ์ฒด ์์ฑ ๊ฐ ๋ณ๊ฒฝ, ์ถ๊ฐ, ์ ๊ฑฐ
- ์์ฑ ๊ฐ ๋ณ๊ฒฝ ์ dot(.)์ด๋ ๋๊ดํธ([]) ์ฌ์ฉ
- ๊ฐ์ฒด์ ๊ฐ ํ ๋นํ๋ ์์ฑ์ด ์์ ๊ฒฝ์ฐ, ํด๋น ์์ฑ์ด ์ถ๊ฐ๋จ
- delete ์ฐ์ฐ์๋ฅผ ์ด์ฉํด ์์ฑ ์ ๊ฑฐ
5๏ธโฃ ๊ฐ์ฒด ์ฐธ์กฐ
- ๊ฐ์ฒด๋ ๋ณต์ฌ๋์ง ์๊ณ ์ฐธ์กฐ๋จ.
- JS์์ ์์(Primitive) ๋ฐ์ดํฐ ํ์ ์ด ์๋ ๋ชจ๋ ๊ฐ์ ์ฐธ์กฐ ํ์
- ์ฐธ์กฐ ํ์ ์ Object, Array, Date, Error ํฌํจ
- ํ์ ํ์ธ ๋ฐฉ๋ฒ : typeof → null์ ์์ ํ์ . but, typeof ์ฐ์ฐ์์์ object๋ฅผ ๋ฐํ
6๏ธโฃ ๊ฐ์ฒด ๋ถ๋ฅ
- Object
- Built-in Object
- Standard Built-in Object
- Native Object
- BOM (Browser Object Model)
- DOM (Document Object Model)
- Host Object(์ฌ์ฉ์ ์ ์)
- Built-in Object
7๏ธโฃ ํจ์ ์ ์ธ, ํธ์ถ
- JS์์ ํจ์๋ ์ผ๊ธ(first-class) ๊ฐ์ฒด
- ํจ์๋ฅผ ๋ณ์, ๊ฐ์ฒด, ๋ฐฐ์ด ๋ฑ์ ์ ์ฅ ๊ฐ๋ฅ
- ๋ค๋ฅธ ํจ์์ ์ ๋ฌํ๋ ์ ๋ฌ ์ธ์(์ฝ๋ฐฑํจ์) or ๋ฆฌํด ๊ฐ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
- ํ๋ก๊ทธ๋จ ์คํ ์ค ๋์ ์์ฑ ๊ฐ๋ฅ
- ํจ์ ์ ์ ๋ฐฉ๋ฒ 3๊ฐ์ง
- ํจ์ ์ ์ธ๋ฌธ
function sum1(num) { var sum = 0; for(var i = 1; i <= N; i++) { sum += i; } console.log(sum); // 5 } sum1(10);
- ํจ์ ํํ์(๋ฆฌํฐ๋ด)
var sum2 = function (N) { var sum = 0; for(var i = 1; i <= N; i++) { sum += i; } console.log(sum) // 55 }; sum2(10);
- Function ์์ฑ์(constructor) ํจ์
var sum3 = new Function( "num", "var sum = 0;" + "for(var i = 1; i <= N; i++ {" + " sum += i;" + "} " + "console.log(sum);" ); sum3(10);
8๏ธโฃ ํจ์ ํธ์ด์คํ
- ํจ์ ์ ์ธ๋ฌธ์ ๊ฒฝ์ฐ ํจ์ ์ ์ธ ์์น ์๊ด์์ด ์ฝ๋ ๋ด ์ด๋ ๊ณณ์์๋ ์ง ํธ์ถ ๊ฐ๋ฅ
- JS ๋ชจ๋ ์ ์ธ (var, function)์ ํธ์ด์คํ (Hoisting)
- ํจ์ ์ ์ธ๋ฌธ์ผ๋ก ์ ์๋ ํจ์๋ JS ์์ง ์คํฌ๋ฆฝํธ๊ฐ ๋ก๋ฉ๋๋ ์์ ์ ์ด๋ฅผ ๋ณ์๊ฐ์ฒด์ ์ ์ฅ
- ํจ์ ์ ์ธ, ์ด๊ธฐํ, ํ ๋น์ด ํ ๋ฒ์ ์ด๋ฃจ์ด์ง.
- ํจ์ ํํ์์ ๊ฒฝ์ฐ ํจ์ ํธ์ด์คํ ์ด ์๋ ๋ณ์ ํธ์ด์คํ ๋ฐ์
9๏ธโฃ ํจ์ ๋งค๊ฐ๋ณ์
- ๋งค๊ฐ๋ณ์(parameter) : ํจ์์ ์ ์ ๋ถ๋ถ์ ์ธ๋ถ๋ก๋ถํฐ ์ ๋ฌ๋ฐ์ ๋ณ์
- ์ ๋ฌ์ธ์(argument) : ํจ์ ํธ์ถ ์ ์ ๋ฌํ๋ ๊ฐ
- JS์์ ํจ์ ์ ์ ์ ๋งค๊ฐ๋ณ์์ ๋ํ ํ์ ๋ช ์ X
- ํจ์ ํธ์ถ ์ ์ ์๋ ๋งค๊ฒจ๋ณ์์ ์ ๋ฌ์ธ์ ๊ฐ์ ์ผ์นํ์ง ์๋๋ผ๋ ํธ์ถ ๊ฐ๋ฅ
๋ฐ์ํ
'STUDY > Front End' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Web(Front) - Javascript-Event (0) | 2024.08.28 |
---|---|
Web(Front) - Web Browser & Window ๊ฐ์ฒด (0) | 2024.08.28 |
[BOJ/Java] ์ ๋ง๋๊ธฐ (10799) (0) | 2024.08.28 |
Web(Front) - JavaScript (0) | 2024.08.27 |
Web(Front) - CSS ์์ฑ (0) | 2024.08.27 |
Comments