# Стрелочные функции

MDN (opens new window)

# Варианты

# 2 агрумента

// Arrow Function
const add = (x, y) => x + y;
// Function
function add(x, y) {
	return x + y;
}

# 1 агрумент

  • Если функция принимает 1 параметр, не нужно заключать его в скобки
// Arrow Function
const square = x => x*x;
// Function
const square = function(x) {
	return x*x;
}

# Без аргументов

// Arrow Function
const giveMeAnswer = () => 42;
// Function
const giveMeAnswer = function() {
	return 42;
}

# Не возвращает значение

// Arrow Function
const log = () => console.log('hi');
// Function
const log = function() {
	console.log('hi');
}

# Состоит из двух строк

  • Если в стрелочной функции несколько строк, то используются фигурные скобки и return
// Arrow Function
const multiply = (x, y) => {
	const result = x*y;
	return result;
}
// Function
const multiply = function(x, y) {
	const result = x*y;
	return result;
}

# Возвращает объект

  • Возвращаемый объект оборачивается в круглые скобки
// Arrow Function
const getPerson = () => ({ name:'Jack' });
// Function
const getPerson = function() {
	return { name:'Jack' }
}