자바스크립트에서 함수는 특정 작업을 수행하는 코드 블록으로, 필요할 때 이름을 호출해서 반복적으로 사용할 수 있는 구조입니다. 함수를 사용하면 같은 코드를 여러 번 작성하지 않고 재사용할 수 있어 코드가 더 효율적이고 깔끔해집니다. 함수는 function 키워드를 사용하여 정의하며, 괄호 안에는 함수에 전달할 매개변수(입력값)를 넣을 수 있고, 내부에서 return 키워드를 사용해 결과값(출력값)을 반환할 수 있습니다. 함수는 자바스크립트에서 반복되는 작업을 모듈화하고 재사용하기 위한 핵심 도구입니다. 자바스크립트에서는 함수를 만드는 두 가지 방법이 있습니다. 기본 함수 선언식과 함수 표현식인데 비슷해 보이지만 중요한 차이점이 있습니다.
function sayHello() {
console.log("안녕하세요!");
}
const sayHello = function() {
console.log("안녕하세요!");
};
자바스크립트가 코드를 실행하기 전에, 변수와 함수 선언을 "끌어올리는" 동작을 말합니다. 즉, 변수나 함수가 코드의 아래쪽에 있어도, 위쪽에 있는 것처럼 동작하는 현상입니다.
자바스크립트는 코드를 실행할 때 2단계 과정으로 처리합니다
✅ 이게 바로 호이스팅의 정체입니다!!
매개변수가 없고, 정해진 코드만 실행합니다.
function showMessage() {
console.log("환영합니다!");
}
showMessage();
매개변수를 받아서 동적으로 동작합니다.
function greet(name) {
console.log("안녕하세요, " + name + "님!");
}
greet("김사과");
결과를 return으로 반환해서 다른 곳에서 사용할 수 있습니다.
function add(a, b) {
return a + b;
}
let result = add(3, 5);
console.log(result);
매개변수를 안 넣으면 기본값이 사용됩니다.
function greet(name = "게스트") {
console.log("안녕하세요, " + name + "님!");
}
greet();
greet("김사과");
매개변수가 몇 개인지 몰라도 받을 수 있습니다. (... 사용)
function sum(...numbers) {
let total = 0;
for (let num of numbers) {
total += num;
}
return total;
}
console.log(sum(1, 2));
console.log(sum(1, 2, 3, 4));
정의하자마자 바로 실행되는 함수입니다. 한 번만 실행되는 초기화 코드 등에 사용됩니다.
(function() {
console.log("이건 즉시 실행 함수입니다!");
})();
함수 내부에서 또 다른 함수를 정의할 수 있습니다.
function outer() {
function inner() {
console.log("안쪽 함수 실행!");
}
inner();
}
outer();
함수가 다른 함수를 리턴할 수 있습니다.
function createGreeting(message) {
return function(name) {
console.log(message + ", " + name + "님!");
};
}
const hello = createGreeting("안녕하세요");
hello("김사과");
클래스 (0) | 2025.04.13 |
---|---|
객체 지향 프로그래밍 (0) | 2025.04.13 |
배열과 반복문 (0) | 2025.04.10 |
배열 (0) | 2025.04.10 |
제어문 - 기본 반복문 (0) | 2025.04.10 |