1. ํจ์๋?
ํจ์๋ ํน์ ์์ ์ ์ํํ๋ ์ฝ๋์ ๋ฌถ์์ด๋ค.
ํ์ํ ๋ ํธ์ถํ์ฌ ์ฌ์ฌ์ฉํ ์ ์๋ค.
- ์ฝ๋ ์ฌ์ฌ์ฉ
- ๊ฐ๋ ์ฑ ํฅ์
- ์ ์ง๋ณด์ ์ฉ์ด
1) ๊ธฐ๋ณธ ํจ์ ์ ์๋ฌธ
function greet() {
console.log("Hello");
}
ํธ์ถ
greet();
2) ๋งค๊ฐ ๋ณ์๊ฐ ์๋ ํจ์
function add(a, b) {
return a + b;
}
add(3, 5);
- a, b → ๋งค๊ฐ๋ณ์(Parameter)
- 3, 5 → ์ธ์(Argument)
3) ๋งค๊ฐ ๋ณ์ ์์ด ์ ๋ฌ ๊ฐ ๋ฐ๊ธฐ
arguments ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
function sum() {
console.log(arguments[0] + arguments[1]);
}
sum(2, 3);
โป ES6 ์ดํ์๋ Rest Parameter ๊ถ์ฅ
function sum(...nums) {
return nums.reduce((a, b), => a + b);
}
2. return๋ฌธ
- ๊ฐ์ ํธ์ถํ ๊ณณ์ผ๋ก ๋ฐํ
- ํจ์ ์คํ ์ฆ์ ์ข ๋ฃ
function multiply(a, b) {
return a * b;
}
๊ฐ์ ์ข ๋ฃ ์์
function test() {
console.log("์คํ");
return;
console.log("์ด ์ฝ๋๋ ์คํ๋์ง ์์.");
}
3. ์ฌ๊ท ํจ์
ํจ์ ๋ด๋ถ์์ ์๊ธฐ ์์ ์ ํธ์ถํ๋ ๊ตฌ์กฐ
function factorial(n) {
if (n === 1) return 1;
return n * factorial(n - 1);
}
์ข ๋ฃ ์กฐ๊ฑด์ด ๋ฐ๋์ ํ์ํ๋ค.
4. ํจ์ ์ค์ฝํ(Scope)
์ค์ฝํ(Scope)๋ ๋ณ์์ ์ ํจ ๋ฒ์๋ฅผ ์๋ฏธํ๋ค.
1) ์ ์ญ ๋ณ์
ํจ์ ์ธ๋ถ์์ ์ ์ธํ๋ค.
let globalVar = 10;
- ์ด๋์๋ ์ ๊ทผ ๊ฐ๋ฅ
- ๋จ์ฉ ์ ์ถฉ๋ ์ํ
2) ์ง์ญ ๋ณ์
ํจ์ ๋ด๋ถ์์ ์ ์ธํ๋ค.
function test() {
let localVar = 5;
}
- ํจ์ ๋ด๋ถ์์๋ง ์ ๊ทผ ๊ฐ๋ฅ
โน๏ธ ์ ์ญ ๋ณ์ vs. ์ง์ญ ๋ณ์
| ๊ตฌ๋ถ | ์ ์ญ ๋ณ์ | ์ง์ญ ๋ณ์ |
| ์ ์ธ ์์น | ํจ์ ์ธ๋ถ | ํจ์ ๋ด๋ถ |
| ์ ๊ทผ ๋ฒ์ | ์ ์ฒด | ํด๋น ํจ์ |
| ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ | ์ค๋ ์ ์ง | ํธ์ถ ์ข ๋ฃ ์ ์ ๊ฑฐ |
3) ์ ์ญ ํจ์ vs. ์ง์ญ ํจ์
์ ์ญ ํจ์
function globalFunc() {}
์ด๋์๋ ํธ์ถ ๊ฐ๋ฅ
์ง์ญ ํจ์
function outer() {
function inner() {
console.log("๋ด๋ถ ํจ์");
}
}
inner๋ outer ๋ด๋ถ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
4) ์ ์ญ๊ณผ ์ง์ญ์ ๋๋๋ ์ด์
- ๋ณ์ ์ถฉ๋ ๋ฐฉ์ง
- ๋ฉ๋ชจ๋ฆฌ ํจ์จ ๊ด๋ฆฌ
- ์ฝ๋ ์์ ์ฑ ํ๋ณด
- ๋ชจ๋ํ
5. ๊ฐ์ฒด ์์ฑ์ ํจ์
๊ฐ์ฒด๋ฅผ ์ฌ๋ฌ ๊ฐ ๋ง๋ค๊ธฐ ์ํ ํ ํ๋ฆฟ ์ญํ ์ ํ๋ค.
function Person(name, age) {
this.name = name;
this.age = age;
}
์ฌ์ฉ
let p1 = new Person("John", 30);
1) ์์ฑ์ ํจ์์ ํ์ฉ
- ๋์ผ ๊ตฌ์กฐ ๊ฐ์ฒด ๋ฐ๋ณต ์์ฑ
- ์ธ์คํด์ค๋ณ ๋ฐ์ดํฐ ๊ด๋ฆฌ
2) ํ๋กํ ํ์ (Prototype)
์์ฑ์ ํจ์ ๋ด๋ถ์ ๋ฉ์๋๋ฅผ ์์ฑํ๋ฉด ๊ฐ์ฒด๋ง๋ค ๋ฉ์๋๊ฐ ์๋ก ์์ฑ๋๋ค.
function Person(name) {
this.name = name;
this.sayHello = function() {
console.log("Hi");
};
}
๋นํจ์จ์ ์ด๋ค.
ํ๋กํ ํ์ ์ ์ฌ์ฉ
Person.prototype.sayHello = function() {
console.log("Hi");
};
- ๋ฉ์๋๋ฅผ ๊ณต์
- ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ
- ์ฑ๋ฅ ํฅ์
6. JavaScript ๋ด์ฅ ํจ์
JavaScript๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๋ฌ ์ ์ญ ํจ์๋ฅผ ์ ๊ณตํ๋ค.
| ํจ์ | ์ค๋ช |
| parseInt() | ๋ฌธ์์ด → ์ ์ |
| parseFloat | ๋ฌธ์์ด → ์ค์ |
| isNaN() | ์ซ์์ธ์ง ํ๋ณ |
| eval() | ๋ฌธ์์ด์ ์ฝ๋๋ก ์คํ |
| alert() | ๊ฒฝ๊ณ ์ฐฝ |
| prompt() | ์ ๋ ฅ์ฐฝ |
| confirm() | ํ์ธ์ฐฝ |
'Front-End > JavaScript | jQuery | AJAX' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| 07. ์ ์ด์ฟผ๋ฆฌ(jQuery) ์ด๋ฒคํธ (0) | 2026.02.17 |
|---|---|
| 06. ์ ์ด์ฟผ๋ฆฌ(jQuery) ๋ฌธ์ ๊ฐ์ฒด ์ ํ์์ ์กฐ์๋ฒ (0) | 2026.02.17 |
| 04. ๊ฐ์ฒด(Object) (0) | 2026.02.16 |
| 03. ์ ์ด๋ฌธ(Control Statement) (0) | 2026.02.16 |
| 02. JavaScript ๊ธฐ์ด ๋ฌธ๋ฒ (0) | 2026.02.16 |