본문 바로가기

TIL/JavaScript

함수

복잡한 문제를 해결하기 위해 작고 간단한 문제를 먼저 해결하는 방법을 택하는데, 이때 함수는 작업을 하는 하나의 작업 단위,
작은문제를 뜻한다.

 

함수의 역할

  • 코드의 묶음
  • 기능의 단위
  • 입력과 출력간의 매핑
  • return을 통한 값 반환

함수의 사용방법

  1. 함수 선언하기

함수 선언문

function calculator(num1,num2){  // 키워드(function)함수명(calculator)(매개변수1, 매개변수2)
	let result = num1 + num2;    // 함수 내부 실행 코드
    return result                // return 할 값 result
    }

 함수를 선언해야 사용이 가능하다. 선언하는 방법은 위와 같다. 매개변수들인 num1, num2 는 선언이 되어진 상태로 들어오는 것.

 하지만 result는 선언이 되어진 것이 아니기 때문에 선언을 해야 사용이 가능하다.

 

함수 표현식

let calculator = function(num1, num2){  // let 함수명(calculator) = 키워드(function)(매개변수1, 매개변수2)
	let result = num1 + num2;           // 함수 내부 코드
    return result                       // return 할 값 result
    }

함수표현식을 사용하는 방법은 위와 같다. 다른 점은 변수에 함수를 할당하는것과 같이 사용한다는 것.

 

*함수는 호이스팅 방식으로 코드를 차례대로 읽는 것이 아니라 코드를 읽기 전 함수가 먼저 저장된다.

 따라서 뒤에서 쓸 함수가 미리 저장되어 혼란을 일으키는 경우가 있다. 호이스팅의 영향을 받지않고 코드가 함수표현식 까지 읽어 내려졌을 때

함수를 사용가능하게 하고 싶다면 함수표현식을 쓴다.

 

 

  2. 함수 호출하기

   - 함수는 호출이 되어야만 자신의 역할을 할 수 있다. 함수를 사용한다는 것은 특정한 코드의 묶음을 호출한다는 것.

console.log(calculator(7,9)) // num1(7) + num2(9) = 16 의 값이 리턴되어 보여진다.

* 이 때 매개변수는 함수 안에서만 사용이 가능하다. 밖에서는 선언된 상태가 아닌 것.

   또한, 매개변수의 개수는 여러개여도 무관하다. 개수에 맞는 전달인자만 주어지면 차례로 전달된다.

   하지만, 매개변수의 수가 더 많을 때 맞지 않는 개수의 인자들은 undefined형태가 되며 오류가 나지는 않는다.

 

 

   3. return (반환 값)

   - 함수 내부의 코드가 진행이 되다가 return을 만나면 함수는 종료가 된다. 

      (return 뒤에는 코드가 있어도 진행되지 않음)

   - 리턴문에 작성된 코드는 함수 외부로 리턴되며, 외부에서 함수를 호출되면 실행결과를 return을 통해 받을 수 있다.

   - return값을 변수에 할당하는 것도 가능하다.

'TIL > JavaScript' 카테고리의 다른 글

객체 지향 프로그래밍(OOP)  (0) 2023.01.13
객체 지향 프로그래밍 (클래스와 인스턴스) in JS  (0) 2023.01.13
반복문(for, while)  (0) 2022.12.22
조건문(if, else if , else)  (0) 2022.12.19
변수  (2) 2022.12.17