Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. JavaScript error reference
  5. Erro de sintaxe: declaração de função requer um nome

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

Erro de sintaxe: declaração de função requer um nome

Mensagem

Errodesintaxe: Identificador Esperado(Edge)Errodesintaxe: declaração de função requer um nome [Firefox]Errodesintaxe: Token inesperado ( [Chrome]

Tipo de erro

Errodesintaxe

O que estava errado?

Existe uma declaração no código que requer um nome. Você precisa checar como as funções são definidas e se você precisa providenciar um nome, se a função em questão precisa ser uma expressão de função, umIIFE ou se o código da função está colocado corretamente neste contexto.

Exemplos

Statements vs expressions

Umadeclaração de função (oudeclaração de função) requer um nome, isso não vai funcionar:

js
function () {  return 'Olha mundo';}// SyntaxError: function statement requires a name

Você pode usar uma expressão de função ao invés de uma atribuição.

js
var saudar = function () {  return "Ola mundo";};

Ou, sua função pode ser pretendida a ser umaIIFE (Immediately Invoked Function Expression), qual é uma função que será em breve definida. Você vai precisar de um pouco mais de colchetes neste caso:

js
(function () {})();

Funçoes etiquetadas

Se usarlabels, precisará providenciar um nome de função depois da palavrafunction . Isto não funciona:

js
function Saudacao() {  alemao: function () {    return "Moin";  }}// SyntaxError: a função declaração requer um nome

Isso funciona ,veja o exemplo:

js
function Saudacao() {  alemao: function g() {    return "Moin";  }}

Métodos de Objetos

Se pretende criar um metodo para um objeto, voce precisa-rá criar um objeto (hehehe). A seguir uma sintaxe sem nome depois defunction é válida.

js
var saudacao = {  alemao: function () {    return "Moin";  },};

Callback Sintaxe

Alem disso,cheque sua sintaxe usando callbacks. Colchetes e virgulas ficam facilmente atrapalhar e dificultar.

js
promessa.then(  function() {    console.log("sucesso");  });  function() {    console.log("erro");}// SyntaxError: function statement requires a name

O correto seria:

json
promise.then(  function() {    console.log("success");  },  function() {    console.log("error");  });//sempre que abrir feche();

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp