aboutsummaryrefslogtreecommitdiff
path: root/files/pt-br/web/javascript/reference/errors/unnamed_function_statement
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:49:58 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:49:58 +0100
commit68fc8e96a9629e73469ed457abd955e548ec670c (patch)
tree8529ab9fe63d011f23c7f22ab5a4a1c5563fcaa4 /files/pt-br/web/javascript/reference/errors/unnamed_function_statement
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-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.html116
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>