diff options
author | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:49:58 +0100 |
---|---|---|
committer | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:49:58 +0100 |
commit | 68fc8e96a9629e73469ed457abd955e548ec670c (patch) | |
tree | 8529ab9fe63d011f23c7f22ab5a4a1c5563fcaa4 /files/pt-br/web/javascript/reference/errors/unnamed_function_statement | |
parent | 8260a606c143e6b55a467edf017a56bdcd6cba7e (diff) | |
download | translated-content-68fc8e96a9629e73469ed457abd955e548ec670c.tar.gz translated-content-68fc8e96a9629e73469ed457abd955e548ec670c.tar.bz2 translated-content-68fc8e96a9629e73469ed457abd955e548ec670c.zip |
unslug pt-br: move
Diffstat (limited to 'files/pt-br/web/javascript/reference/errors/unnamed_function_statement')
-rw-r--r-- | files/pt-br/web/javascript/reference/errors/unnamed_function_statement/index.html | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/files/pt-br/web/javascript/reference/errors/unnamed_function_statement/index.html b/files/pt-br/web/javascript/reference/errors/unnamed_function_statement/index.html new file mode 100644 index 0000000000..6f01588059 --- /dev/null +++ b/files/pt-br/web/javascript/reference/errors/unnamed_function_statement/index.html @@ -0,0 +1,116 @@ +--- +title: 'Erro de sintaxe: declaração de função requer um nome' +slug: Web/JavaScript/Reference/Errors/NãoNomeado_funcão_declaração +tags: + - Erro + - Erro de Sintaxe + - JavaScript + - Statement +translation_of: Web/JavaScript/Reference/Errors/Unnamed_function_statement +--- +<div>{{jsSidebar("Errors")}}</div> + +<h2 id="Mensagem">Mensagem</h2> + +<pre class="syntaxbox">Errodesintaxe: Identificador Esperado(Edge) +Errodesintaxe: declaração de função requer um nome [Firefox] +Errodesintaxe: Token inesperado ( [Chrome] +</pre> + +<h2 id="Tipo_de_erro">Tipo de erro</h2> + +<p>{{jsxref("Errodesintaxe")}}</p> + +<h2 id="O_que_estava_errado">O que estava errado?</h2> + +<p>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, um {{Glossary("IIFE")}} ou se o código da função está colocado corretamente neste contexto.</p> + +<h2 id="Exemplos">Exemplos</h2> + +<h3 id="Statements_vs_expressions">Statements vs expressions</h3> + +<p>Uma <em>declaração de função</em> (ou <em>declaração de função</em>) requer um nome, isso não vai funcionar:</p> + +<pre class="brush: js example-bad">function () { + return 'Olha mundo'; +} +// SyntaxError: function statement requires a name +</pre> + +<p>Você pode usar uma expressão de função ao invés de uma atribuição.</p> + +<pre class="brush: js example-good">var saudar = function() { + return 'Ola mundo'; +};</pre> + +<p>Ou, sua função pode ser pretendida a ser uma <a href="https://en.wikipedia.org/wiki/Immediately-invoked_function_expression">IIFE</a> (Immediately Invoked Function Expression), qual é uma função que será em breve definida. Você vai precisar de um pouco mais de colchetes neste caso:</p> + +<pre class="brush: js example-good">(function () { + +})();</pre> + +<h3 id="Funçoes_etiquetadas">Funçoes etiquetadas</h3> + +<p>Se usar <a href="/en-US/docs/Web/JavaScript/Reference/Statements/label">labels</a>, precisará providenciar um nome de função depois da palavra <code>function</code> . Isto não funciona:</p> + +<pre class="brush: js example-bad">function Saudacao() { + alemao: function () { + return "Moin"; + } +} +// SyntaxError: a função declaração requer um nome +</pre> + +<p>Isso funciona ,veja o exemplo:</p> + +<pre class="brush: js example-good">function Saudacao() { + alemao: function g() { + return "Moin"; + } +}</pre> + +<h3 id="Métodos_de_Objetos">Métodos de Objetos</h3> + +<p>Se pretende criar um metodo para um objeto, voce precisa-rá criar um objeto (hehehe). A seguir uma sintaxe sem nome depois de <code>function</code> é válida.</p> + +<pre class="brush: js example-good">var saudacao = { + alemao: function () { + return "Moin"; + } +};</pre> + +<h3 id="Callback_Sintaxe">Callback Sintaxe</h3> + +<p>Alem disso,cheque sua sintaxe usando callbacks. Colchetes e virgulas ficam facilmente atrapalhar e dificultar.</p> + +<pre class="brush: js example-bad">promessa.then( + function() { + console.log("sucesso"); + }); + function() { + console.log("erro"); +} +// SyntaxError: function statement requires a name +</pre> + +<p>O correto seria:</p> + +<pre class="brush: json example-good">promise.then( + function() { + console.log("success"); + }, + function() { + console.log("error"); + } +);//sempre que abrir feche(); +</pre> + +<h2 id="Veja_também">Veja também</h2> + +<ul> + <li><a href="https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide/Functions">Guia de funções em JavaScript</a></li> + <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/function">Funções de Declaração</a></li> + <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/function">Funções de Expressão</a></li> + <li><a href="https://en.wikipedia.org/wiki/Immediately-invoked_function_expression">Funções imediatas (IIFE)</a></li> + <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/label">Etiqueta</a></li> +</ul> |