Spec-Zone.ru › JavaScript

SyntaxError: missing } after function body

Исключение JavaScript "missing } after function body" возникает, когда при создании функции где-то допущена синтаксическая ошибка. Проверьте, в правильном ли порядке расположены все закрывающие фигурные или круглые скобки.

Сообщение

SyntaxError: missing } after function body (Firefox)

Тип ошибки

SyntaxError

Что пошло не так?

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

Примеры

Забытая закрывающая фигурная скобка

Часто в коде вашей функции отсутствует фигурная скобка:

function charge() {
  if (sunny) {
    useSolarCells();
  } else {
    promptBikeRide();
}

Правильно будет:

function charge() {
  if (sunny) {
    useSolarCells();
  } else {
    promptBikeRide();
  }
}

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

(function () {
  if (Math.random() < 0.01) {
    doSomething();
  }
)();

Часто изменение отступов или двойная проверка отступов помогает обнаружить эти ошибки.

(function () {
  if (Math.random() < 0.01) {
    doSomething();
  }
})();

Смотрите также

  • Руководство по функциям

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Missing_curly_after_function_body

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API