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

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

Синтаксис стрелочных функций выглядит примерно так:

Пример:

Код выше аналогичен коду:

Пример без параметров:

Он же без стрелочных функций:

Пример с несколькими параметрами:

Аналогичный ему код без стрелочных функций:

Многострочный:

Тот же код, но без стрелочных функций:

Стрелочные функции в JavaScript: 7 комментариев

  1. В конце написано.
    Тот же код, но без стрелочных функций:

    Но функция же стрелочная???

  2. Всю эту статью следует очень внимательно перечитать и, может быть, переписать:

    1. Вначале статьи есть отсылки к Java, но никаких конкретных сравнений с Java не приведено.
    2. не затронуты различия стрелочных и стандартных функций (откуда берётся контекст this, есть ли переменная argoments и т. д.)
    3. Почему-то выделен в отдельный подраздел некий «многострочный» формат тела функции вместо просто двух вариантов, когда в первом случае тело функции заключено в фигурные скобки, что требует использования return и короткий вариант, без фигурных скобок, когда по правую сторону стрелки лишь выражение, вычисляющее возвращаемое значение
    4. Если уж показывать «сложность» или «многострочность», то, возможно, целесообразнее использовать пример с if или switch, нежели console.log
    5. Использование тут let противоречит JavaScript-традициям, которые велят писать const если переприсвоение переменной не подразумевается.

  3. Автор, тут не упомянуто главное: стрелочные функции — это модно и современно. Молодой программист вообще должен знать только стрелочные функции и классы, а эту древность с function выкинуть на помойку истории!

    А те, кто используют нестрелочные функции (function, Function, eval), пусть оформляют свои сайты в стиле 1999-го года.
    https://localghost.dev/blog/building-a-website-like-it-s-1999-in-2022/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *