должен ли многострочный var f = function () {/ * Code * /} получить точку с запятой - PullRequest
2 голосов
/ 23 декабря 2010

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

function sayHi(name) {
    (window.console && console.log || alert)('Hello ' + name);
}

var sayBye = function(name) {
    (window.console && console.log || alert)('Cya ' + name);
};

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

Ответы [ 2 ]

4 голосов
/ 23 декабря 2010

Первая функция - это объявление функции , а не оператор.
Для этого не нужна точка с запятой.

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

0 голосов
/ 23 декабря 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...