Почему это приводит к ошибке «неверный синтаксис» с Google Closure Compiler? - PullRequest
4 голосов
/ 19 марта 2012

Если следующее передается в Закрытие кода Google :

return (function() {
    return true;
})();

, это говорит об ошибке синтаксического анализа из-за неверного синтаксиса.В чем может быть проблема?

Ответы [ 2 ]

4 голосов
/ 19 марта 2012

Если это ваш полный код, проблема в том, что вы не можете иметь return оператор (первый) вне определения функции. Попробуйте:

function foo() {
    return (function() {
        return true;
    })();
}
3 голосов
/ 19 марта 2012

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

var example = function () {
  return (function() {
    return true;
  })();
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...