Являются ли анонимные функции плохой практикой в ​​JavaScript?

Я читал, что использование анонимных функций в javascript - плохая практика, потому что это может затруднить отладку, но я сам этого не видел. Являются ли анонимные функции в JavaScript действительно плохой практикой и, если да, то почему?

25
задан palswim 1 March 2011 в 19:14
поделиться

5 ответов

Нет, анонимные функции используются повсеместно в JavaScript в Интернете. Местами это может немного усложнить отладку, но этого недостаточно, чтобы сказать, что их не следует использовать.

Например, JQuery широко их использует.

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

12
ответ дан 28 November 2019 в 21:25
поделиться

Выражения анонимных функций - лучшая практика в JavaScript.

-3
ответ дан 28 November 2019 в 21:25
поделиться

Я бы сказал наоборот, ламбды (псевдонимы) делают некоторые выражения гораздо более лаконичными. Если вы привязываете несколько обработчиков событий к нескольким событиям, было бы утомительно давать имя функции каждому обработчику, например.

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

7
ответ дан 28 November 2019 в 21:25
поделиться

Определенно нет, лямбда-функции используются повсеместно , почти повсеместно.

5
ответ дан 28 November 2019 в 21:25
поделиться

То, что все их используют, не делает их хорошей практикой (все помнят, как использовали элемент table для макета?). Но они великолепны, потому что могут помочь прояснить и упростить ваш код, уменьшая вероятность того, что что-то пойдет не так.

Но анонимные функции не должны быть настолько сложными, чтобы их отладка усложнялась. В таком случае, возможно, лучше создать новую функцию.

4
ответ дан 28 November 2019 в 21:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: