미누에요
[JavaScript] 익명함수(Anonymous Function) 본문
728x90
반응형
SMALL
익명함수(Anonymous Function)
함수를 정의할 때, 이름을 붙이지 않고 사용하는 때가 있다.
그럴 때 사용하는 이름없는 함수가 바로 익명함수(Anonymous Function)이다.
주로 재사용하지 않고, 한번만 사용할 목적으로 생성한다.
function () {
console.log("HI!")
}
기본적으로 위와 같이 사용한다.
함수 이름이 function 과 () 사이에 있어야 하지만, 익명함수는 이름이 없는 함수이므로 없다.
위 코드를 실행하면,
함수의 이름이 필요하다는 오류가 발생한다.
따라서, 익명함수를 사용하려면 아래 두 가지 방법을 사용해야한다.
1. 소괄호(()) 로 감싸기.
소괄호로 익명함수 전체를 감싸는 방법이다.
(function () {
console.log("HI!")
})
소괄호로 익명 함수를 감싸주면 이름을 정의하라는 오류가 뜨지 않아 사용이 가능해진다.
정상적으로 선언되었다.
2. 변수를 하나 선언하여 변수 안에 익명함수를 저장하기
이 방법은 익명함수를 변수에 저장하여 그 변수명으로 익명함수의 내용을 실행하는 방법이다.
const sayHi = function () {
console.log("HI!")
}
sayHi();
위 코드는 sayHi라는 변수를 생성하여 그 안에 HI를 출력하는 익명함수를 저장하였다.
그리고 아래에서 sayHi()를 실행하여 sayHi에 저장된 익명함수를 호출하고 있다.
사실 이 방법은 함수를 선언하는 방법에도 나오는데, 익명함수를 변수에 저장함으로써 실질적으로 함수 이름이 생기는 것처럼 사용되기 때문이다.
위처럼 사용하면 sayHi라는 변수에 익명함수가 저장되어 여러번 사용할 수 있게된다.
따라서 이 방법은 익명함수만을 사용하기보다 익명함수를 사용하여 함수를 선언하는 또다른 방식으로 이해하면 좋을 거 같다.
728x90
반응형
LIST
'JavaScript' 카테고리의 다른 글
[JavaScript] JS every(), .every() 메서드 (0) | 2024.02.21 |
---|---|
[JavaScript] JS some(), .some() 메소드 (0) | 2024.02.21 |
[JavaScript] Arrow Function(화살표 함수), 암시적 반환 (0) | 2024.02.20 |
[JavaScript] map() 메서드, JavaScript 배열 map() (0) | 2024.02.20 |
[JavaScript] 생성자(Constructor), new (0) | 2024.01.17 |