ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자바스크립트의 함수 선언 및 표현 방법을 알려줄게!
    웹개발/JavaScript 2024. 7. 18. 10:30
    728x90

    오늘은 함수에 대해 알아보자. 함수는 프로그램에서 아주 중요한 개념이야.

    쉽게 말해, 함수는 하나의 특별한 목적을 가지고 코드를 실행하도록 만드는 문법이야.

    다양한 방법으로 함수를 정의하고 사용할 수 있어. 그럼, 하나씩 살펴볼까?


    함수 선언식과 함수 표현식

    자바스크립트에서는 함수를 두 가지 방법으로 정의할 수 있어: 1. 함수 선언식2. 함수 표현식.

    그리고 두 가지 방법을 알게 되면 3. 화살표 함수도 사용할 수 있게 될거야!


    1. 함수 선언식 (Function Declaration)

    함수 선언식은 함수를 미리 선언하는 방식이야. 이렇게 하면, 함수가 정의되기 전에 호출할 수 있어.

    function sayHello() {
      console.log("Hello!");
    }
    
    sayHello(); // "Hello!" 출력

     

    2. 함수 표현식 (Function Expression)

    함수 표현식은 함수를 변수에 할당하는 방식이야. 이렇게 하면, 함수가 정의된 후에만 호출할 수 있어.

    let sayHello = function() {
      console.log("Hello!");
    };
    
    sayHello(); // "Hello!" 출력

    함수 표현식에는 이름이 없는 익명 함수(unnammed function)와 이름이 있는 기명 함수(nammed function)가 있어.

    let sayHello = function() {
      console.log("Hello!");
    }; // 익명 함수
    
    let sayHelloNamed = function hello() {
      console.log("Hello!");
    }; // 기명 함수

     

    3. 화살표 함수 (Arrow Function)

    화살표 함수는 함수 표현식의 또 다른 형태야. 더 간단하게 작성할 수 있어.

    const sayHello = () => {
      console.log("Hello!");
    };
    
    sayHello(); // "Hello!" 출력

    function 대신에 var나 const로 식별자를 생성하고 = 할당기호를 통해 매개변수가 들어갈 공간(소괄호) 를 할당하고 => 를 이용하여 함수식을 입력하면 돼.

    * new Function 문법

    new Function을 사용하여 함수를 만들 수도 있어. 다만, 이 방식은 잘 사용되지 않아.

    const sayHello = new Function('console.log("Hello!");');
    
    sayHello(); // "Hello!" 출력

    함수를 선언했다면 함수를 호출하는 방법을 알아야겠지?

    함수를 호출하려면 함수 이름과 소괄호 ()를 사용하면 돼.

    function sayHello() {
      console.log("Hello!");
    }
    
    sayHello(); // "Hello!" 출력

     

    함수는 매개변수를 받을 수 있어. 매개변수는 함수가 실행될 때 사용할 수 있는 변수야.

    function sum(a, b) {
      console.log(a + b);
    }
    
    sum(10, 20); // 30 출력

    함수는 자바스크립트에서 중요한 개념이야.

    다양한 방법으로 정의하고 사용할 수 있는 만큼, 잘 이해하고 활용하는 것이 중요해.

    함수 선언식, 함수 표현식, 화살표 함수, new Function 등 다양한 방법을 알아봤으니, 직접 코드를 작성해보면서 익혀보자!

    궁금한 점이 있으면 댓글에 달아줘!

    728x90
Designed by Tistory.