Упрощенный синтаксис функций

По сравнению с некоторыми (в первую очередь функциональными) языками, определение функции в JS выглядит довольно громоздко:

const square = (x) => {
  return x ** 2;
}

Здесь используется много дополнительных символов и слово return. С версии es6, в языке появился альтернативный, сокращенный синтаксис, который, в некоторых ситуациях, значительно упрощает восприятие и сокращает количество кода.

// Требуется немного времени на привыкание к этой форме, но потом вы не сможете без нее жить
const double = x => x ** 2;

Разберем отличия:

  1. Пропали фигурные скобки и инструкция return. Сокращенная запись функции делает возврат автоматически. Подразумевается что внутри такой функции ровно одно выражение, которое вычисляется и ее результат сразу возвращается наружу.
  2. Вокруг аргумента нет скобок. Такой синтаксис поддерживается только для одноаргументных функций.

Подчеркну что отличия исключительно синтаксические, с точки зрения использования различий нет. Пример с двумя аргументами:

Полная версия

const sum = (a, b) => {
  return a + b;
};

Сокращенная версия

const sum = (a, b) => a + b;

Обратите внимание на отсутствие фигурных скобок. Разработчики, которые не привыкли использовать такой синтаксис, иногда пишут подобный код const sum = (a, b) => { a + b; }, а потом долго не могут понять почему он не работает. Ответ очень простой, если стоят фигурные скобки, то это не сокращенная форма, а значит обязательно ставить return.

Задание

Реализуйте функцию capitalize, которая приводит первую букву переданного слова к верхнему регистру:

  const name = 'arya';
  console.log(capitalize(name)); // => Arya

Чтобы отрезать первый символ от строки, используйте метод String.prototype.slice


Нашли ошибку? Есть что добавить? Пулреквесты приветствуютсяhttps://github.com/hexlet-basics

Упражнение доступно только авторизованным пользователям.

Пожалуйста, авторизуйтесь с помощью учётной записи GitHub, это необходимо для отслеживания прогресса выполнения уроков. Если у вас ещё нет учётной записи, то сейчас самое время создать аккаунт на GitHub.