Skip to content

Commit 8ee735b

Browse files
committed
Finish portuguese article
Fix grammar errors and some expressions translations
1 parent 7797c95 commit 8ee735b

File tree

1 file changed

+28
-28
lines changed

1 file changed

+28
-28
lines changed

1-js/02-first-steps/11-logical-operators/article-pt.md

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -14,32 +14,32 @@ O operador "OU" é representado com dois símbolos de linha vertical:
1414
result = a || b;
1515
```
1616

17-
Na programação clássica, o operador OU é mencionado para manipular apenas valores booleanos. Se qualquer um dos seus argumentos for `true`, ele retorna `true`, se não, retorna `false`.
17+
Em programação clássica, o operador OU é mencionado para manipular apenas valores booleanos. Se qualquer um dos seus argumentos for `true`, ele retorna `true`, se não, retorna `false`.
1818

19-
Em JavaScript, este operador é um pouco mais útil e poderoso. Mas primeir, vamos ver o que acontece com valores booleanos.
19+
Em JavaScript, este operador é um pouco mais útil e poderoso. Mas primeiro, vamos ver o que acontece com valores booleanos.
2020

2121
Existem quatro combinações lógicas possíveis:
2222

2323
```js run
2424
alert( true || true ); // true
2525
alert( false || true ); // true
2626
alert( true || false ); // true
27-
alert( false || false ); // true
27+
alert( false || false ); // false
2828
```
2929

3030
Como podemos ver, o resultado é sempre `true`, exceto para o caso onde os dois operandos são `false`.
3131

32-
Se um operando não é um boolean, ele é convertido em um boolean para sua verificação.
32+
Se um operando não é um boolean, ele é convertido em um boolean para ser avaliado.
3333

34-
Sendo assim, o número `1` é tratado com `true` e o número `0` como `false`.
34+
Por exemplo, o número `1` é tratado com `true` e o número `0` como `false`.
3535

3636
```js run
3737
if (1 || 0) { // funciona como if( true || false)
38-
alert( 'truthy!');
38+
alert( 'verdadeiro!');
3939
}
4040
```
4141

42-
Na maioria das vezes, OU `||` é usado dentro de um `if` STATEMENT para testar se *qualquer* uma das condições dadas é `true`.
42+
Na maioria das vezes, OU `||` é usado dentro de uma expressão `if` para testar se *qualquer* uma das condições dadas é `true`.
4343

4444
Por exemplo:
4545

@@ -70,17 +70,17 @@ A lógica descrita acima é algo clássico. Agora, vamos ver as funcionalidades
7070

7171
O algorítmo extendido funciona da seguinte forma.
7272

73-
Dando múltiplos valores OU's:
73+
Dando múltiplos valores encadeados em OU's:
7474

7575
```js
7676
result = value1 || value2 || value3;
7777
```
7878

7979
O operador OU `||` faz o seguinte:
8080

81-
- Interpreta os operandos da esquerda para a direita.
81+
- Avalia os operandos da esquerda para a direita.
8282
- Para cada operando, o converte para boolean. Se o resultado é `true`, para e retorna o valor original daquele operando.
83-
- Se todos os operandos foram interpretados (i.e. todos são `false`), retorna o último operando.
83+
- Se todos os operandos foram avaliados (i.e. todos são `false`), retorna o último operando.
8484

8585
Um valor é retornado na sua forma original, sem conversão.
8686

@@ -117,9 +117,9 @@ Isso nos mostra algumas utilidades interessantes comparadas ao "puro, clássico,
117117
```
118118

119119
Se ambos `currentUser` e `defaultUser` forem falsos, o resultado será `"unnamed"`.
120-
2. **Interpretação de curto-circuito**
120+
2. **Avaliação de curto-circuito**
121121

122-
Operandos podem não ser apenas valores, mas operações arbitrárias. OU interpreta e testa elas da esquerda para a direita. A interpretação para quando um valor verdadeiro é encontrado e este valor é retornado. Este processo é chamado de "interpretação de curto-circuito" pois vai o mais curto possível da esquerda para a direita.
122+
Operandos podem não ser apenas valores, mas operações arbitrárias. OU interpreta e testa elas da esquerda para a direita. A avaliação é interrompida quando um valor verdadeiro é encontrado e este valor é retornado. Este processo é chamado de "avaliação de curto-circuito" pois vai o mais curto possível da esquerda para a direita.
123123

124124
Isto é claramente visto quando a expressão dada como segundo argumento tem um efeito como a atribuição de uma variável.
125125

@@ -130,10 +130,10 @@ Isso nos mostra algumas utilidades interessantes comparadas ao "puro, clássico,
130130
131131
*!*true*/!* || (x = 1);
132132
133-
alert(x); // undefined, pois (x = 1) não é interpretados
133+
alert(x); // undefined, pois (x = 1) não é avaliado
134134
```
135135

136-
Se, por outro lado, o primeiro argumento é `false`, `||` interpreta o segundo, fazendo assim a atribuição:
136+
Se, por outro lado, o primeiro argumento é `false`, `||` avalia o segundo, fazendo assim a atribuição:
137137

138138
```js run no-beautify
139139
let x;
@@ -143,9 +143,9 @@ Isso nos mostra algumas utilidades interessantes comparadas ao "puro, clássico,
143143
alert(x); // 1
144144
```
145145

146-
Uma atribuição é um caso simples. Outros SIDE EFFECTS podem também estarem envolvidos.
146+
Uma atribuição é um caso simples. Outros ##SIDE EFFECTS(???)## podem também estarem envolvidos.
147147

148-
Como podemos ver, esse caso é como um "uma maneira mais curta de se usar `if`". O primeiro operando é convertido para boolean. Se for false, o segundo operando é interpretado.
148+
Como podemos ver, esse caso é como "uma maneira mais curta de se usar `if`". O primeiro operando é convertido para boolean. Se for false, o segundo operando é avaliado.
149149

150150
Na maioria das vezes, é melhor usar o `if` "regular" para manter a facilidade de entendimento do código, mas vez ou outra isso pode ser útil.
151151

@@ -157,7 +157,7 @@ O operador E é representado com dois e's comerciais `&&`:
157157
result = a && b;
158158
```
159159
160-
Em programação clássica, E retorna `true` se ambos os operandos forem verdadeiros e `false`, caso contrário:
160+
Em programação clássica, E retorna `true` se ambos os operandos forem verdadeiros ou `false`, caso contrário:
161161
162162
```js run
163163
alert( true && true ); // true
@@ -177,27 +177,27 @@ if (hour == 12 && minute == 30) {
177177
}
178178
```
179179
180-
Da mesma forma com OU, qualquer valor é permitido como um operando de E:
180+
Da mesma forma que o OU, qualquer valor é permitido como um operando de E:
181181
182182
```js run
183-
if (1 && 0) { // interpre como true && false
183+
if (1 && 0) { // interpreta como true && false
184184
alert( "não funciona, pois o resultado é falso" );
185185
}
186186
```
187187
188-
## "E" encontra o primeiro valor falsos
188+
## "E" encontra o primeiro valor falso
189189
190-
Dados múltiplos valores encadeados com E's:
190+
Dados múltiplos valores encadeados em E's:
191191

192192
```js
193193
result = value1 && value2 && value3;
194194
```
195195

196196
O operador `&&` faz o seguinte:
197197

198-
- Interpreta os operandos da esquerda para a direita.
199-
- Para cada operando, o converte para um boolean. Se o resultado for `false`, para e retorna o valor original daquele operando.
200-
- Se todos os operandos foram interpretados (i.e. todos são verdadeiros), retorna o último operando.
198+
- Avalia os operandos da esquerda para a direita.
199+
- Para cada operando, o converte para um boolean. Se o resultado for `false`, interrompe e retorna o valor original daquele operando.
200+
- Se todos os operandos foram avaliados (i.e. todos são verdadeiros), retorna o último operando.
201201

202202
Em outras palavras, E retorna o primeiro valor falso ou o último valor se nenhum for falso.
203203

@@ -245,7 +245,7 @@ let x = 1;
245245
(x > 0) && alert( 'Maior que zero!' );
246246
```
247247

248-
A ação na parte direita do `&&` executaria somente se a interpretação chegasse até ela. Ou seja, apenas se `(x > 0)` for verdadeiro.
248+
A ação na parte direita do `&&` executaria somente se a avaliação chegasse até ela. Ou seja, apenas se `(x > 0)` for verdadeiro.
249249

250250
Então, basicamente temos uma analogia para:
251251

@@ -283,14 +283,14 @@ alert( !true ); // false
283283
alert( !0 ); // true
284284
```
285285

286-
Uma repetição do NOT `!!` às vezes é usado para converter um valor para o tipo boolean:
286+
Uma repetição do NÃO `!!` às vezes é usado para converter um valor para o tipo boolean:
287287

288288
```js run
289289
alert( !!"string não vazia" ); // true
290290
alert( !!null ); // false
291291
```
292292

293-
Ou seja, o primeiro NOT converte o valor para boolean e retorna o seu inverso e o segundo NOT o inverte de novo. No final, nós temos uma conversão do valor para boolean.
293+
Ou seja, o primeiro NÃO converte o valor para boolean e retorna o seu inverso e o segundo NÃO o inverte de novo. No final, nós temos uma conversão do valor para boolean.
294294

295295
Existem outras formas mais extensas de se fazer a mesma coisa -- uma função `Boolean`:
296296

@@ -299,7 +299,7 @@ alert( Boolean("string não vazia") ); // true
299299
alert( Boolean(null) ); // false
300300
```
301301

302-
A precedência do NOT `!` é a mais alta entre todos os operadores lógicos, então ele é executado primeiro, antes que `&&` ou `||`.
302+
A precedência do NÃO `!` é a mais alta entre todos os operadores lógicos, então ele é executado primeiro, antes que `&&` ou `||`.
303303

304304

305305

0 commit comments

Comments
 (0)