Skip to content

Commit

Permalink
Markdown conversion for pt-BR - Cleanup - JavaScript section (#7970)
Browse files Browse the repository at this point in the history
* fix all except dls

* fix dls

* Reapply fix over updated file
  • Loading branch information
SphinxKnight committed Sep 14, 2022
1 parent f95628f commit a1dea54
Show file tree
Hide file tree
Showing 166 changed files with 791 additions and 1,212 deletions.
2 changes: 0 additions & 2 deletions files/pt-br/web/javascript/closures/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ <h2 id="Escopo_léxico">Escopo léxico</h2>

<p>Considere a função abaixo:</p>

<div style="width: auto; overflow: hidden;">
<pre class="brush: js">function init() {
var name = "Mozilla"; // name é uma variável local criada pelo init
function displayName() {
Expand All @@ -29,7 +28,6 @@ <h2 id="Escopo_léxico">Escopo léxico</h2>
}
init();
</pre>
</div>

<p>A função <code>init()</code> cria uma variável local chamada <code>name</code>, e depois define uma função chamada <code>displayName()</code>. <code>displayName()</code> é uma função aninhada (uma <em>closure</em>) — ela é definida dentro da função <code>init()</code>, e está disponivel apenas dentro do corpo daquela função. Diferente de <span style="font-family: courier new,andale mono,monospace; line-height: 1.5;">init()</span><span style="line-height: 1.5;">,</span><span style="line-height: 1.5;"> </span><code style="font-style: normal; line-height: 1.5;">displayName()</code><span style="line-height: 1.5;"> não tem variáveis locais próprias, e ao invés disso reusa a variável </span><code style="font-style: normal; line-height: 1.5;">name</code><span style="line-height: 1.5;"> declarada na função pai.</span></p>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ <h2 id="Igualdade_de_mesmo_valor">Igualdade de mesmo valor</h2>

<h2 id="Igualdade_abstrata_igualdade_estrita_e_de_mesmo_valor_na_especificação">Igualdade abstrata, igualdade estrita, e de mesmo valor na especificação</h2>

<p>No ES5, a comparação efetuada por<code> <a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators"><code>==</code></a> </code>é descrita em <a href="http://ecma-international.org/ecma-262/5.1/#sec-11.9.3">Seção 11.9.3, O Algoritmo da Igualdade Abstrata</a>. A comparação <code><a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators"><code>===</code></a> </code>está em <a href="http://ecma-international.org/ecma-262/5.1/#sec-11.9.6">11.9.6, O Algoritmo de Igualdade Estrita</a>. (Veja estes. Eles são breve e legível. Dica: leia o algoritmo de igualdade estrita primeiro.) ES5 também descreve, em <a href="http://ecma-international.org/ecma-262/5.1/#sec-9.12">Seção 9.12, o Algoritmo de Mesmo Valor</a> para uso internamente pelo motor de JS. É em grande parte o mesmo que o Algoritmo de Igualdade Estrita, exceto que 11.9.6.4 e 9.12.4 diferem em manipulação do <code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Number" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Number"><code>Number</code></a></code>. ES6 simplesmente se propõe a expor este algoritmo através de <code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Object/is" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Object/is"><code>Object.is</code></a></code>.</p>
<p>No ES5, a comparação efetuada por<code> <a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators"><code>==</code></a> </code>é descrita em <a href="http://ecma-international.org/ecma-262/5.1/#sec-11.9.3">Seção 11.9.3, O Algoritmo da Igualdade Abstrata</a>. A comparação <code><a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Comparison_Operators"><code>===</code></a> </code>está em <a href="http://ecma-international.org/ecma-262/5.1/#sec-11.9.6">11.9.6, O Algoritmo de Igualdade Estrita</a>. (Veja estes. Eles são breve e legível. Dica: leia o algoritmo de igualdade estrita primeiro.) ES5 também descreve, em <a href="http://ecma-international.org/ecma-262/5.1/#sec-9.12">Seção 9.12, o Algoritmo de Mesmo Valor</a> para uso internamente pelo motor de JS. É em grande parte o mesmo que o Algoritmo de Igualdade Estrita, exceto que 11.9.6.4 e 9.12.4 diferem em manipulação do <a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Number" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Number"><code>Number</code></a>. ES6 simplesmente se propõe a expor este algoritmo através de <a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Object/is" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Object/is"><code>Object.is</code></a>.</p>

<p>Podemos ver que com iguais duplos e triplos, com exceção de fazer uma verificação de tipo inicial 11.9.6.1, o Algoritmo de Igualdade Estrita é um subconjunto do Algoritmo Igualdade Abstrata, porque 11.9.6.2-7 correspondem a 11.9.3.1.a -f.</p>

Expand Down Expand Up @@ -380,43 +380,25 @@ <h2 id="Quando_usar_Object.is_ao_invés_de_três_iguais">Quando usar <code><a hr

<dl>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators#-_.28Unary_Negation.29" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators">- (negação unário)</a></code></dt>
</dl>

<dl>
<dd>
<p>É óbvio que negando 0 produz -0. Mas a abstração de uma expressão pode causar -0 a fluência em quanto você não percebe isso. Por exemplo, considere:</p>

<pre class="brush:js">let stoppingForce = obj.mass * -obj.velocity</pre>

<p>If obj.velocity is 0 (ou calcula para 0), um -0 é introduzido naquele lugar e propaga-se em stoppingForce.</p>
</dd>
</dl>

<dl>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/atan2" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/atan2">Math.atan2</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/ceil" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/ceil">Math.ceil</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/pow" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/pow">Math.pow</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/round" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/round">Math.round</a></code></dt>
</dl>

<dl>
<dd>É possível que um -0 para ser introduzido em uma expressão como um valor de retorno desses métodos, em alguns casos, mesmo quando nenhum -0 exista como um dos parâmetros. Por exemplo, usando <a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/pow" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/pow">Math.pow</a> para levantar -<a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Infinity" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Infinity">Infinity</a> a potência de qualquer número, expoente ímpar negativo avaliada como -0. Consulte a documentação para os métodos individuais.</dd>
</dl>

<dl>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/floor" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/floor">Math.floor</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/max" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/max">Math.max</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/min" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/min">Math.min</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/sin" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/sin">Math.sin</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/sqrt" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/sqrt">Math.sqrt</a></code></dt>
<dt><code><a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/tan" title="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Math/tan">Math.tan</a></code></dt>
</dl>

<dl>
<dd>É possível obter um -0 valor de retorno para fora destes métodos em alguns casos em que um -0 existe como um dos parâmetros. Por exemplo, <code>Math.min(-0, +0)</code> resulte em -0. Consulte a documentação para os métodos individuais.</dd>
</dl>

<dl>
<dt><a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators">~</a></dt>
<dt><a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators">&lt;&lt;</a></dt>
<dt><a href="/pt-BR/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators" title="/pt-BR/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators">&gt;&gt;</a></dt>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ <h3 id="Exemplo"><strong>Exemplo</strong></h3>

<p>Aqui, <code>{ x++; }</code> é a declaração de bloco.</p>

<p><strong>Importante</strong>: <span class="short_text" id="result_box" lang="pt"><span class="hps">Antes de</span> <span class="hps">ECMAScript</span> <span class="hps">6 o </span></span><span style="line-height: 1.5;">JavaScript <strong>não</strong> possuía escopo de bloco. Variáveis introduzidas dentro de um bloco possuem como escopo a função ou o script em que o bloco está contido, e, definir tais variáveis tem efeito muito além do bloco em si. Em outras palavras, declarações de bloco não introduzem um escopo. Embora blocos "padrão" sejam uma sintaxe válida não utilize-os, em JavaScript, pensando que funcionam como em C ou Java porque eles não funcionam da maneira que você acredita. Por exemplo:</span></p>
<p><strong>Importante</strong>: Antes de ECMAScript 6 o JavaScript <strong>não</strong> possuía escopo de bloco. Variáveis introduzidas dentro de um bloco possuem como escopo a função ou o script em que o bloco está contido, e, definir tais variáveis tem efeito muito além do bloco em si. Em outras palavras, declarações de bloco não introduzem um escopo. Embora blocos "padrão" sejam uma sintaxe válida não utilize-os, em JavaScript, pensando que funcionam como em C ou Java porque eles não funcionam da maneira que você acredita. Por exemplo:</p>

<pre class="brush: js">var x = 1;
{
Expand All @@ -68,7 +68,7 @@ <h3 id="if...else_statement" name="if...else_statement">Declaração if...else</
declaracao_2;
}</pre>

<p>onde <code>condicao</code> pode ser qualquer expressão que seja avaliada como verdadeira ou falsa. Veja <a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Boolean#Description">Boolean</a> para uma explicação sobre o que é avaliado como <code>true</code> e <code>false</code>. <span style="line-height: 1.5;">Se <code>condicao</code> for avaliada como verdadeira, declaracao<code>_1</code> é executada; caso contrário, <code>declaracao_2</code> é executada. <code>declaracao_1</code> e <code>declaracao_2</code> podem ser qualquer declaração, incluindo declarações <code>if</code> aninhadas.</span></p>
<p>onde <code>condicao</code> pode ser qualquer expressão que seja avaliada como verdadeira ou falsa. Veja <a href="/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Boolean#Description">Boolean</a> para uma explicação sobre o que é avaliado como <code>true</code> e <code>false</code>. Se <code>condicao</code> for avaliada como verdadeira, declaracao<code>_1</code> é executada; caso contrário, <code>declaracao_2</code> é executada. <code>declaracao_1</code> e <code>declaracao_2</code> podem ser qualquer declaração, incluindo declarações <code>if</code> aninhadas.</p>

<p>Você pode também combinar declarações utilizando <code>else if</code> para obter várias condições testadas em sequência, como o seguinte:</p>

Expand All @@ -89,7 +89,7 @@ <h3 id="if...else_statement" name="if...else_statement">Declaração if...else</
declaracao_2_executada_se_condicao_for_verdadeira;
} else {
declaracao_3_executada_se_condicao_for_falsa;
<span style="font-size: 1rem;">declaracao_4_executada_se_condicao_for_falsa</span>;
declaracao_4_executada_se_condicao_for_falsa;
}
</pre>

Expand Down
Loading

0 comments on commit a1dea54

Please sign in to comment.