Советы по работе с функциями в JavaScript | OTUS
Скидка до 15% на курсы ноября, декабря и января
❄️ До 20.12 Забрать скидку! →
Выбрать курс

Советы по работе с функциями в JavaScript

В этой статье мы дадим несколько советов по работе с функциями в JavaScript. Совет № 1 — избегайте передачи нескольких параметров в функции.

Дело в том, что JavaScript не является статически типизированным языком, поэтому невозможно дать гарантию, что функция вызывается с ожидаемыми и правильными параметрами. Тут нельзя не вспомнить инструмент для статического анализа кода ES6, который привносит много полезных функций. Среди них — деструктурирование объекта, которое тоже можно применять для аргументов функций.

Итак, давайте рассмотрим пример кода. Как думаете, является ли фрагмент, расположенный ниже, интуитивно понятным? Можно ли сразу сказать, каковы его параметры?

Screenshot_1-1801-983a47.png

А что можно сказать насчет следующего примера?

Screenshot_2-1801-bd74f6.png

Пожалуй, последний фрагмент удобнее для чтения. В особенности это относится к вызовам функций из другого модуля. При этом не имеет значения порядок аргументов, когда эти аргументы используются объектом, что уже весомый плюс.

Теперь посмотрим на предлагаемую конфигурацию ESLint:

Screenshot_3-1801-f7241f.png

Совет № 2: возвращайте объекты из функций

Для примера рассмотрим еще один фрагмент кода. Что он может нам рассказать о сигнатуре функции? Возвращает ли она объект пользователя, его идентификатор, статус операции? Пожалуй, не понимая контекста, сделать вывод непросто.

Screenshot_4-1801-f892b9.png

Однако путем возвращения объекта из функции намерение разработчика становится понятным, да и код становится более читабельным:

Screenshot_5-1801-2df437.png

Источник

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто
Новогодние скидки в Otus!-15% ❄️
Успейте забрать свою скидку до 20.12 →