[JavaScript] 함수 표현식과 화살표 함수 & 콜백 함수(Callback)

2026. 2. 18. 20:37·Web Frontend/JavaScript(TS)
반응형

함수 표현식과 화살표 함수

1. 함수 표현식

-> 익명함수는 function () 형태로 만들 수 있다.

// 1. 함수 표현식
function funcA() {
  console.log("funcA");
}

let varA = funcA; // 함수가 아니라 함수 자체를 넣어줌.
console.log(varA);

// f funcA() {
//    console.log("funcA");
//}
// 출력

varA(); // 함수를 실행

let varB = function funcB() {
  console.log("funcB");
};

varB();
// funcB(); -> 이건 오류, funcB는 사용할 수 없음.

let varC = function () {
  // 익명함수
  console.log("funcB");
};

console.log(varC()); // funcB 출력

2. 화살표 함수

-> 화살표 함수를 이용해서 익명함수를 function()이 아닌 () => 형태로도 만들 수 있다.

// 2. 화살표 함수
let varD = () => {
  return 1;
};

console.log(varD()); // 1 출력

let varE = () => 1;

console.log(varE()); // 1 출력

let varF = (value) => value + 1;

console.log(varF(10)); // 11 출력

let varG = (value) => {
  console.log(value);
  return value + 1;
};

console.log(varG(10)); // 10 11 출력

콜백 함수

-> 자신이 아닌 다른 함수에, 인수로써 전달된 함수를 의미 함.

-> 매개 변수에 변수가 아닌 함수를 넘겨서 사용.

// 콜백 함수

// 1. 콜백함수
// 자신이 아닌 다른 함수에, 인수로써 전달된 함수를 의미 함

function main(value) {
  value();
}

function sub() {
  console.log("i am sub");
}

main(sub); // "i am sub 출력"

main(function sub() {
  // 이렇게도 가능.
  console.log("i am sub");
});

main(() => {
  // 이렇게도 가능.
  console.log("i am sub");
});

// 2. 콜백함수의 활용.
function repeat(count) {
  for (let idx = 1; idx <= count; idx++) {
    console.log(idx);
  }
}

function repeatDouble(count) {
  for (let idx = 1; idx <= count; idx++) {
    console.log(idx * 2);
  }
}

// repeat(5);
// repeatDouble(5);

// 위 처럼 구조가 흡사한 함수를 만들 일이 있음.
// 이럴 경우 아래와 같이 콜백함수로 만들 수 있음.

function repeatCallback(count, callback) {
  for (let idx = 1; idx <= count; idx++) {
    callback(idx);
  }
}

repeatCallback(5, function (idx) {
  console.log(idx);
});

repeatCallback(5, (idx) => {
  // function 제거하고 => 붙여도 동일하게 사용 가능.
  console.log(idx * 2);
});

repeatCallback(5, (idx) => {
  console.log(idx * 3);
});

 

반응형
저작자표시 비영리 변경금지 (새창열림)
'Web Frontend/JavaScript(TS)' 카테고리의 다른 글
  • [JavaScript] 연산자
  • [JavaScript] 형 변환
  • [JavaScript] 변수와 상수 & 자료형
seunghwaan
seunghwaan
공부한 내용을 정리하는 개발 기록 블로그
    반응형
  • seunghwaan
    SH's Devlog
    seunghwaan
  • 전체
    오늘
    어제
    • 분류 전체보기 (148) N
      • Android (62)
        • Basic (17)
        • Kotlin(Java) (14)
        • UI & Animation (1)
        • Compose (2)
        • Coroutines (1)
        • Dependency Injection (6)
        • RxJava (8)
        • BLE (3)
        • TDD (2)
        • JetPack (1)
        • NextStep (4)
        • Error Log (3)
      • Flutter (14)
        • Basic (5)
        • Dart (1)
        • State Management (2)
        • Widgets (4)
        • Error and Tips (2)
      • iOS (8)
        • Basic (0)
        • Swift (8)
      • Web Frontend (4) N
        • JavaScript(TS) (4) N
        • React (0)
      • CS(Computer Science) (18)
        • Network (4)
        • Database (10)
        • Design Pattern (1)
        • Computer Architecture (3)
        • Operating System (0)
      • Cloud (6)
        • AWS (6)
      • DevOps (25)
        • GIT (4)
        • CI CD (8)
        • Linux (4)
        • Docker (9)
        • Error Log (0)
      • 코딩테스트 (10)
        • DB (6)
        • 알고리즘 (4)
      • Backend (1)
        • Spring (1)
      • Mac Tip (0)
      • Language (0)
        • English (0)
        • Japanese (0)
      • Temporary (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Kotlin
    cs
    시작하세요! 도커
    docker
    cognito
    MySQL
    Dagger
    di
    Android
    gradle
    Swift
    database
    CICD
    RxJava
    Linux
    Jenkins
    Dependency Injection
    상태 관리
    Algorithm
    AWS
    CI
    Computer Science
    FLUTTER
    JavaScript
    컴퓨터공학
    error
    BLE
    Network
    IOS
    네트워크
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
seunghwaan
[JavaScript] 함수 표현식과 화살표 함수 & 콜백 함수(Callback)
상단으로

티스토리툴바