Конкретная проблема, которую JSLint пытается исправить, связана с отсутствием закрытия ;
, что может привести к ошибке, когда функция интерпретируется как аргумент:
(function A( arg ){
// stuff
})
(function B(){
...
});
Совершенно верно, B
передается A
как arg
.Тем не менее, это часто не тот случай, так как часто они предназначены для самореализации, а завершающий ()
был забыт.Предлагаемый синтаксис устраняет любую путаницу, которую вы, возможно, случайно забыли выполнить своей функцией, как предполагалось.
Для чего бы то ни было, я почти всегда также использую первый синтаксис;привычка.