aboutsummaryrefslogtreecommitdiff
path: root/files/pt-br/web/javascript/reference/errors/undeclared_var/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/pt-br/web/javascript/reference/errors/undeclared_var/index.html')
-rw-r--r--files/pt-br/web/javascript/reference/errors/undeclared_var/index.html62
1 files changed, 62 insertions, 0 deletions
diff --git a/files/pt-br/web/javascript/reference/errors/undeclared_var/index.html b/files/pt-br/web/javascript/reference/errors/undeclared_var/index.html
new file mode 100644
index 0000000000..a51d080828
--- /dev/null
+++ b/files/pt-br/web/javascript/reference/errors/undeclared_var/index.html
@@ -0,0 +1,62 @@
+---
+title: 'ReferenceError: Atribuição à variável não declarada "x"'
+slug: Web/JavaScript/Reference/Errors/Undeclared_var
+translation_of: Web/JavaScript/Reference/Errors/Undeclared_var
+---
+<div>{{jsSidebar("Errors")}}</div>
+
+<h2 id="Message">Message</h2>
+
+<pre class="syntaxbox">ReferenceError: Atribuição à variável não declarada "x"(Firefox)
+ReferenceError: "x" não está definido (Chrome)
+ReferenceError: Variável indefinida em <em>strict mode</em> (Edge)
+</pre>
+
+<h2 id="Tipo_de_erro">Tipo de erro</h2>
+
+<p>{{jsxref("ReferenceError")}} aviso em <em><a href="/en-US/docs/Web/JavaScript/Reference/Strict_mode">strict mode</a></em> somente.</p>
+
+<h2 id="O_que_deu_errado">O que deu errado?</h2>
+
+<p>Um valor foi atribuído a uma variável não declarada. Em outras palavras, houve uma atribuição sem a palavra-chave var. Existem algumas diferenças entre as variáveis declaradas e não declaradas, o que pode levar a resultados inesperados e é por isso que o JavaScript apresenta um erro no modo estrito.</p>
+
+<p>Três coisas a observar sobre as variáveis declaradas e não declaradas:</p>
+
+<ul>
+ <li>Variáveis declaradas são limitadas no contexto de execução em que são declarados. Variáveis não declaradas são sempre globais.</li>
+ <li>Variáveis declaradas são criados antes de qualquer código ser executado. Variáveis não declaradas não existem até que o código atribuido for executado.</li>
+ <li>Variáveis declaradas são uma propriedade não-configurável de seu contexto de execução (função ou global). Variáveis não declaradas são configuráveis (por exemplo, pode ser excluído).</li>
+</ul>
+
+<p>Para mais exemplos, veja a página de referência <code><a href="/en-US/docs/Web/JavaScript/Reference/Statements/var">var</a></code>.</p>
+
+<p>Erros sobre atribuições de variáveis não declaradas ocorrem apenas em <a href="/en-US/docs/Web/JavaScript/Reference/Strict_mode">código de modo estrito</a>. Em código não-estrito, eles são silenciosamente ignorados.</p>
+
+<h2 id="Examplos">Examplos</h2>
+
+<h3 id="Casos_inválidos">Casos inválidos</h3>
+
+<p>neste caso, a variavel "bar" é uma variavel não declarada.</p>
+
+<pre class="brush: js example-bad">function foo() {
+ "use strict";
+ bar = true;
+}
+foo(); // ReferenceError: assignment to undeclared variable bar
+</pre>
+
+<h3 id="Casos_válidos">Casos válidos</h3>
+
+<p>Para fazer uma variável declarada "bar", você pode adicionar a palavra-chave <a href="/en-US/docs/Web/JavaScript/Reference/Statements/var">var</a> na frente dele.</p>
+
+<pre class="brush: js example-good">function foo() {
+ "use strict";
+ var bar = true;
+}
+foo();</pre>
+
+<h2 id="Veja_também">Veja também</h2>
+
+<ul>
+ <li><em><a href="/en-US/docs/Web/JavaScript/Reference/Strict_mode">Strict mode</a></em></li>
+</ul>