Thanks to visit codestin.com
Credit goes to developer.mozilla.org

This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

SyntaxError: return not in function

Сообщение

SyntaxError: 'return' statement outside of function (Edge)
SyntaxError: return not in function (Firefox)
SyntaxError: yield not in function (Firefox)

Тип ошибки

SyntaxError.

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

Вызов оператора return или yield был осуществлён вне функции. Может, где-то пропущена фигурная скобка? Операторы return и yield не могут существовать вне функции, поскольку они завершают (или останавливают и возобновляют) её исполнение и указывают значение, возвращаемое в место, откуда она была вызвана.

Примеры

js
var cheer = function(score) {
  if (score === 147)
    return 'Максимум!';
  };
  if (score > 100) {
    return 'Столетие!';
  }
}

// SyntaxError: return not in function

На первый взгляд кажется, что фигурные скобки расставлены правильно, но в данном примере пропущена { после первого оператора if. Правильный вариант:

js
var cheer = function (score) {
  if (score === 147) {
    return "Максимум!";
  }
  if (score > 100) {
    return "Столетие!";
  }
};

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