Почему я должен использовать точку с запятой после каждой функции в JavaScript?

Я'вэ видел разных разработчиков включают точку с запятой после функции в JavaScript и некоторые не'т. Что является лучшей практике?

function weLikeSemiColons(arg) {
   // bunch of code
};

или

function unnecessary(arg) {
  // bunch of code
}
Решение

Точки с запятой после объявления функции* и не надо.

Грамматика `FunctionDeclaration описано в спецификация как это:

function Identifier ( FormalParameterListopt ) { FunctionBody }

Там's нет запятой грамматически обязательным, но может задаться вопросом: зачем?

Точка с запятой служит для разделения заявления друг от друга, и FunctionDeclaration не **инструкция.

FunctionDeclarations оцениваются прежде этот код поступает в исполнение, hoisting - это простые слова используется для объяснения такого поведения.

Термины и"функция декларации" и "функция заявление на" ошибочно используются как синонимы, что не существует функции инструкции, описанные в функции спецификация, однако есть несколько реализаций, которые включают в себя функции оператора в грамматике, в частности Мозилла - но это опять-таки нестандартные.

Однако точки с запятой всегда рекомендуется, когда вы используете FunctionExpressions, например:

var myFn = function () {
  //...
};

(function () {
  //...
})();

Если опустить точку с запятой после первой функции в приведенном выше примере, вы получите совершенно нежелательным результатам:


var myFn = function () {
  alert("Surprise!");
} // 
Комментарии (5)

Я использую их после того, как функция, как объявления переменных:

var f = function() { ... };

но не после классических определений:

function f() {
    ...
}
Комментарии (3)

Корпит на JS де-факто конвенции, и он говорит, что нет точки с запятой после тела функции. Увидеть то"запятой" в разделе.

Комментарии (3)

Просто оставаться последовательным! Они не нужны, но я лично использую их, потому что большинство методов минимизации полагаться на точку с запятой (например, упаковщик).

Комментарии (0)

Действительно зависит только от ваших предпочтений. Мне нравится в конце строк кода с полу двоеточия, потому что я'м использоваться для Java, С++, C# и т. д, Поэтому я использую те же стандарты кодирования в JavaScript.

Я не'т, как правило, заканчиваются, хотя объявления функций в полу двоеточия, но это просто мои предпочтения.

В браузерах он будет работать в любом случае, но может быть, однажды они'МР придумать некоторые более строгие стандарты, регулирующие это.

Пример кода я бы написал:

function handleClickEvent(e)
{
     // comment
     var something = true;  // line of code
     if (something)  // code block
     {
        doSomething();  // function call
     }
}
Комментарии (3)

Это'ы на самом деле больше, чем вопрос о конвенции или консистенции.

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

Кроме того, при сжатии или сокращение кода, отсутствие точки с запятой может привести к уменьшенная версия вашего скрипта, который не'т делать, что ты хочешь, потому что все белое пространство уходит.

Комментарии (3)

Когда я уменьшил мои скрипты, я понял, что мне нужно использовать точку с запятой для функции, которая начинается с равенства знаком. при определении функции как VAR, да, вам нужно использовать точку с запятой.

нужна точка с запятой

var x = function(){};
var x = new function(){};
this.x = function(){};

не нужно запятой

function x(){}
Комментарии (0)

Просто:

Это хорошая практика, чтобы оставить точку с запятой ; после окончания подтяжки функцию. Они были для лет.

Одним из преимуществ постоянного использования, если вы хотите минимизировать ваш код JavaScript.

Как минификации JavaScript, и позволяет уменьшить размер файла немного.

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

Если вы Don'Т использовать точку с запятой, и если вы хотите минимизировать (как многие разработчики любят делать, если их сайт предлагают много кода JavaScript) вы могли получить всевозможные ошибки/предупреждения.

Комментарии (1)

точка с запятой после функции не нужно использовать его или нет, не вызывает ошибок в вашей программе. однако, если вы планируете сократите свой код, затем, используя точку с запятой после функции-это хорошая идея. скажем, например, у вас есть код, как показано ниже //файл один ВАР один=1; ВАР два=2; tryOne функция(){} trytwo функция(){} и //файл два ВАР один=1; ВАР два=2; tryOne функция(){}; trytwo функция(){}; когда вы сократите обоих, вы получите следующие выходные Обратите внимание, что комментарии только для иллюстрационная

//файл один ВАР один=1;ВАР два=2;Функция tryOne(){} trytwo функция(){} и //файл два ВАР один=1;ВАР два=2;Функция tryOne(){};trytwo функция(){};

Комментарии (0)