JavaScript - 화살표 함수(Arrow function)

thdy3k·2023년 11월 25일
0

함수를 정의하는 방법에는 함수선언문과 함수표현식이 있습니다.

// 함수선언문
function sum (x, y) {
	return x + y;
}

// 함수표현식
const subtract = function (x, y) {
	return x - y;
}

ES6가 등장하면서 함수를 정의하는 방법이 하나 더 생겼습니다. 바로 화살표 함수(arrow function)입니다. 함수표현식으로 함수를 정의할 때 function 키워드 대신 화살표(=>)를 사용합니다.

// 화살표 함수
const multiply = (x, y) => {
	return x * y;
}

이처럼 화살표 함수를 사용하면 함수표현식으로 함수를 정의할 때보다 간략하게 함수를 정의할 수 있습니다. 또한 화살표 함수로 함수를 정의할 때 생략할 수 있는 몇 가지 규칙이 있습니다. 그 규칙들을 알아보겠습니다.

1. 매개변수가 한 개일 때, 소괄호(())를 생략할 수 있다.

// 매개변수가 한 개일 때, 소괄호를 생략할 수 있습니다.
const square = x => { return x * x }

// 위 코드와 동일하게 동작합니다.
const square = ( x ) => { return x * x }

// 단, 매개변수가 없는 경우엔 소괄호를 생략할 수 없습니다.
const greeting = () => { return 'hello world' }

2. 함수 코드 블록 내부가 하나의 문으로 구성되어 있다면 중괄호({})를 생략할 수 있다. 이때 코드 블록 내부의 문이 값으로 평가될 수 있으면 return 키워드를 생략할 수 있다.

const squre = x => x * x

// 위 코드와 동일하게 동작합니다.
const square = x => { return x * x }

// 위 코드와 동일하게 동작합니다.
const square = function (x) {
	return x * x
}

0개의 댓글