JavaScript - 함수 선언 방법

자바스크립트에서 함수를 선언하는 다양한 방법을 소개합니다.

1. Function declaration (함수 선언)

기본적인 함수를 정의하고 함수를 호출하는 방법입니다. hello()가 리턴하는 결과를 console.log()로 출력하였습니다.

function hello() {
  return 'Hello';
}

console.log(hello());

Output:

Hello

또한, 다음과 같이 함수가 인자를 받을 수 있습니다. 호출 시 인자를 함수에 전달하면 됩니다.

function hello(name) {
  return 'Hello ' + name;
}

console.log(hello('John'));

Output:

Hello John

그리고 인자에 name=value 처럼 기본 값을 설정할 수 있습니다. 함수 호출 시 인자를 전달하지 않으면 기본 값을 사용합니다.

function hello(name='Tom') {
  return 'Hello ' + name;
}

console.log(hello());
console.log(hello('John'));

Output:

Hello Tom
Hello John

2. Function expression (함수 표현식)

익명 함수를 정의하고 변수에 할당합니다. 함수를 호출할 때는 변수 이름에 ()를 붙이면 됩니다.

const square = function(x) {
  return x*x;
};

console.log(square(5));
console.log(square(10));

Output:

25
100

아래와 같이 인자에 디폴트 값을 사용할 수도 있습니다.

const square = function(x = 3) {
  return x*x;
};

console.log(square());
console.log(square(5));

Output:

9
25

3. Immediately invokable function expression

다음과 같이 익명 함수를 정의하고 바로 호출할 수 있습니다.

(function(){
  console.log('Hello..');
})();

Output:

Hello..

또한, 기본적인 함수 정의와 같이 인자도 받을 수 있습니다.

(function(name){
  console.log('Hello.. ' + name);
})('John');

Output:

Hello.. John

4. Arrow function

아래와 같이 화살표로 간단히 함수를 정의할 수도 있습니다. 다른 언어의 Lambda 표현식과 비슷합니다.

hello = () => {
  return "Hello";
};

console.log(hello());

Output:

Hello

위의 코드는 아래와 같이 더 간단히 표현할 수도 있습니다.

hello = () => "Hello";

console.log(hello());

또한, 아래와 같이 함수에 인자를 전달할 수도 있습니다.

hello = (name) => "Hello " + name;

console.log(hello('John'));

Output:

Hello John
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha