From a814a17e85a5d73ee3d0473e44cf7555b6beba47 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Sun, 28 Feb 2021 15:47:59 -0300 Subject: [PATCH 01/31] Translated article.md Translated 1-js/02-first-steps/07-type-conversions/article.md --- .../07-type-conversions/article.md | 114 +++++++++--------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index cf97b3307..18942d961 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -1,150 +1,150 @@ -# Type Conversions +# Conversões de Tipo -Most of the time, operators and functions automatically convert the values given to them to the right type. +Na maior parte do tempo, operadores e funções convertem os valores dados a eles para o tipo certo automaticamente. -For example, `alert` automatically converts any value to a string to show it. Mathematical operations convert values to numbers. +Por exemplo, `alert` converte automaticamente qualquer valor para string antes de mostrá-lo. Operações matemáticas convertem os valores para number. -There are also cases when we need to explicitly convert a value to the expected type. +Também existem casos em que precisamos explicitamente converter um valor para o tipo que precisamos. ```smart header="Not talking about objects yet" -In this chapter, we won't cover objects. For now we'll just be talking about primitives. +Nesse capítulo, não vamos falar sobre objetos. Por agora, vamos abordar apenas os tipos primitivos. -Later, after we learn about objects, in the chapter we'll see how objects fit in. +Mais tarde, após abordarmos objetos no capítulo , veremos como objetos se comportam em conversões de tipo. ``` -## String Conversion +## Conversões para String -String conversion happens when we need the string form of a value. +As conversões para string acontecem quando precisamos da forma string de um valor. -For example, `alert(value)` does it to show the value. +Por exemplo, `alert(valor)` faz isso para mostrar `valor`. -We can also call the `String(value)` function to convert a value to a string: +Também podemos usar a função `String(value)` para converter um valor para string: ```js run let value = true; alert(typeof value); // boolean *!* -value = String(value); // now value is a string "true" +value = String(value); // agora value é uma string "true" alert(typeof value); // string */!* ``` -String conversion is mostly obvious. A `false` becomes `"false"`, `null` becomes `"null"`, etc. +Conversões para string são as mais fáceis. `false` se torna `"false"`, `null` vira `"null"`, e assim por diante. + +## Conversões Numéricas -## Numeric Conversion +As conversões numéricas acontecem automaticamente em funções e expressões matemáticas. -Numeric conversion happens in mathematical functions and expressions automatically. - -For example, when division `/` is applied to non-numbers: +Por exemplo, quando `/` é usado em valores que não são number: ```js run -alert( "6" / "2" ); // 3, strings are converted to numbers +alert( "6" / "2" ); // 3, strings viram numbers ``` -We can use the `Number(value)` function to explicitly convert a `value` to a number: +Podemos usar a função Number(`valor`) para converter `valor` para number. ```js run let str = "123"; alert(typeof str); // string -let num = Number(str); // becomes a number 123 +let num = Number(str); // vira um number: 123 alert(typeof num); // number ``` -Explicit conversion is usually required when we read a value from a string-based source like a text form but expect a number to be entered. +Conversões explícitas geralmente são obrigatórias quando estamos obtendo um valor de uma fonte baseada em string - como um texto - mas esperamos um receber um valor numérico. -If the string is not a valid number, the result of such a conversion is `NaN`. For instance: +Se a string não é um valor numérico válido, o resultado da conversão é `NaN`. Por exemplo: ```js run -let age = Number("an arbitrary string instead of a number"); +let age = Number("uma string ao invés de um number"); -alert(age); // NaN, conversion failed +alert(age); // NaN, conversão falhou ``` Numeric conversion rules: -| Value | Becomes... | +| Valor | Se torna... | |-------|-------------| |`undefined`|`NaN`| |`null`|`0`| -|true and false | `1` and `0` | -| `string` | Whitespaces from the start and end are removed. If the remaining string is empty, the result is `0`. Otherwise, the number is "read" from the string. An error gives `NaN`. | +|`true` e `false` | `1` e `0` | +| `string` | Espaços em branco do início e do fim são removidos. Se a string que sobrar for vazia, o resultado é `0`. Senão, o número é "lido" a partir da string. Um erro nos dá `NaN`| -Examples: +Exemplos: ```js run alert( Number(" 123 ") ); // 123 -alert( Number("123z") ); // NaN (error reading a number at "z") +alert( Number("123z") ); // NaN (Erro ao ler "z") alert( Number(true) ); // 1 alert( Number(false) ); // 0 ``` -Please note that `null` and `undefined` behave differently here: `null` becomes zero while `undefined` becomes `NaN`. +Note que `null` e `undefined` se comportam de maneira diferente: `null` se torna zero, enquanto `undefined` vira `NaN`. -Most mathematical operators also perform such conversion, we'll see that in the next chapter. +A maioria dos operadores matemáticos também performam essa conversão, na qual veremos no próximo capítulo. -## Boolean Conversion +## Conversões Booleanas -Boolean conversion is the simplest one. +Conversões booleanas são as mais simples de todas. -It happens in logical operations (later we'll meet condition tests and other similar things) but can also be performed explicitly with a call to `Boolean(value)`. +Acontecem em uma operação lógica (depois veremos testes de condição e outras coisas similares), mas também podem acontecer explicitamente ao usar a função `Boolean(valor)`. -The conversion rule: +A rerga de conversão: -- Values that are intuitively "empty", like `0`, an empty string, `null`, `undefined`, and `NaN`, become `false`. -- Other values become `true`. +- Valores que são intuitivamente "vazios", como "0", uma string vazia (""), `null`, `undefined` e `NaN`, viram `false`. +- Outras valores viram `true`. -For instance: +Por exemplo: ```js run alert( Boolean(1) ); // true alert( Boolean(0) ); // false -alert( Boolean("hello") ); // true +alert( Boolean("Olá") ); // true alert( Boolean("") ); // false ``` -````warn header="Please note: the string with zero `\"0\"` is `true`" -Some languages (namely PHP) treat `"0"` as `false`. But in JavaScript, a non-empty string is always `true`. +````warn header="Note que uma string com um zero `\"0\"` é `true`" +Algumas linguagens de programação (isto é, PHP), tratam `\"0\"` como `false`. Mas no JavaScript, uma string não-vazia sempre é `true`. ```js run alert( Boolean("0") ); // true -alert( Boolean(" ") ); // spaces, also true (any non-empty string is true) +alert( Boolean(" ") ); // espaços também são true (any non-empty string is true) ``` ```` -## Summary +## Sumário -The three most widely used type conversions are to string, to number, and to boolean. +As três conversões mais comuns são para string, number e boolean. -**`String Conversion`** -- Occurs when we output something. Can be performed with `String(value)`. The conversion to string is usually obvious for primitive values. +**`Conversões para String`** -- Ocorrem quando mostramos algum valor. Podem ser explicitamente feitas com `String(valor)`. As conversões para string geralmente é obvia em tipos primitivos. -**`Numeric Conversion`** -- Occurs in math operations. Can be performed with `Number(value)`. +**`Conversões Numéricas`** -- Ocorrem em operações matemáticas. Podem ser feitas com `Number(valor)`. -The conversion follows the rules: +A conversão segue as seguintes regras: -| Value | Becomes... | +| Valor | Se torna... | |-------|-------------| |`undefined`|`NaN`| |`null`|`0`| -|true / false | `1 / 0` | -| `string` | The string is read "as is", whitespaces from both sides are ignored. An empty string becomes `0`. An error gives `NaN`. | +|`true` e `false` | `1` e `0` | +| `string` | Espaços em branco do início e do fim são removidos. Se a string que sobrar for vazia, o resultado é `0`. Senão, o número é "lido" a partir da string. Um erro nos dá `NaN`| -**`Boolean Conversion`** -- Occurs in logical operations. Can be performed with `Boolean(value)`. +**`Conversões Booleanas`** -- Ocorrem em operações lógicas. Podem ser feitas com `Boolean(valor)`. -Follows the rules: +Seguem as regras: -| Value | Becomes... | +| Value | Se torna... | |-------|-------------| |`0`, `null`, `undefined`, `NaN`, `""` |`false`| -|any other value| `true` | +|qualquer outro valor| `true` | -Most of these rules are easy to understand and memorize. The notable exceptions where people usually make mistakes are: +A maior parte dessas regras são fáceis de entender e memorizar. Exceções notáveis em que as pessoas geralmente erram são: -- `undefined` is `NaN` as a number, not `0`. -- `"0"` and space-only strings like `" "` are true as a boolean. +- `Number(undefined)` vira `NaN`, não `0`. +- `"0"` e strings só com espaço `" "` são `true` como booleanos. -Objects aren't covered here. We'll return to them later in the chapter that is devoted exclusively to objects after we learn more basic things about JavaScript. +Objetos não são citados aqui. Retornaremos depois no capítulo que é dedicado exclusivamente para objetos, após aprendermos coisas mais básicas de JavaScript. From 61386dbf828a633ffe22d7775797b05eaf2a1ec4 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Sun, 28 Feb 2021 15:49:13 -0300 Subject: [PATCH 02/31] Translated table I hadn't translated a table on last commit --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 18942d961..44237e696 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -136,7 +136,7 @@ A conversão segue as seguintes regras: Seguem as regras: -| Value | Se torna... | +| Valor | Se torna... | |-------|-------------| |`0`, `null`, `undefined`, `NaN`, `""` |`false`| |qualquer outro valor| `true` | From 0f60c5c01211ec80f208baed567ce42efdd12d69 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Sun, 28 Feb 2021 15:51:27 -0300 Subject: [PATCH 03/31] Translated another part I forgot to translate Translated "any non-empty string becomes true" --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 44237e696..d5050682c 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -111,7 +111,7 @@ Algumas linguagens de programação (isto é, PHP), tratam `\"0\"` como `false`. ```js run alert( Boolean("0") ); // true -alert( Boolean(" ") ); // espaços também são true (any non-empty string is true) +alert( Boolean(" ") ); // espaços também são true (toda string não-vazia se torna true) ``` ```` From b2bb352b191fac60ac3f82f4fe21836af9ed383c Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Sun, 28 Feb 2021 15:56:42 -0300 Subject: [PATCH 04/31] Translated "Numeric conversion rules:" --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index d5050682c..08b5a64bb 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -63,7 +63,7 @@ let age = Number("uma string ao invés de um number"); alert(age); // NaN, conversão falhou ``` -Numeric conversion rules: +Regras de conversões numéricas: | Valor | Se torna... | |-------|-------------| From 213165f1b12aa249415e36a6c4cdba06635aa438 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Sun, 28 Feb 2021 16:00:01 -0300 Subject: [PATCH 05/31] Translated "Not talking about objects yet" --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 08b5a64bb..4f1a74926 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -6,7 +6,7 @@ Por exemplo, `alert` converte automaticamente qualquer valor para string antes d Também existem casos em que precisamos explicitamente converter um valor para o tipo que precisamos. -```smart header="Not talking about objects yet" +```smart header="Não vamos falar sobre objetos" Nesse capítulo, não vamos falar sobre objetos. Por agora, vamos abordar apenas os tipos primitivos. Mais tarde, após abordarmos objetos no capítulo , veremos como objetos se comportam em conversões de tipo. From 9ef030e16e3b7d6066e2731a460b42b4dbfd0459 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Sun, 28 Feb 2021 16:13:07 -0300 Subject: [PATCH 06/31] Fixed typo --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 4f1a74926..b8886d2d6 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -91,7 +91,7 @@ Conversões booleanas são as mais simples de todas. Acontecem em uma operação lógica (depois veremos testes de condição e outras coisas similares), mas também podem acontecer explicitamente ao usar a função `Boolean(valor)`. -A rerga de conversão: +A regra de conversão: - Valores que são intuitivamente "vazios", como "0", uma string vazia (""), `null`, `undefined` e `NaN`, viram `false`. - Outras valores viram `true`. From ffd6c991d6aa9cccaee3bbfea8a1ad92175e6990 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 10:59:32 -0300 Subject: [PATCH 07/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index b8886d2d6..7430004ab 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -2,7 +2,7 @@ Na maior parte do tempo, operadores e funções convertem os valores dados a eles para o tipo certo automaticamente. -Por exemplo, `alert` converte automaticamente qualquer valor para string antes de mostrá-lo. Operações matemáticas convertem os valores para number. +Por exemplo, `alert` converte automaticamente qualquer valor para string antes de mostrá-lo. Operações matemáticas convertem os valores para números. Também existem casos em que precisamos explicitamente converter um valor para o tipo que precisamos. From 9ee88593ac03c997ad52728b1b596d93a18fa8d4 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 10:59:41 -0300 Subject: [PATCH 08/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 7430004ab..957881ec8 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -4,7 +4,7 @@ Na maior parte do tempo, operadores e funções convertem os valores dados a ele Por exemplo, `alert` converte automaticamente qualquer valor para string antes de mostrá-lo. Operações matemáticas convertem os valores para números. -Também existem casos em que precisamos explicitamente converter um valor para o tipo que precisamos. +Também existem casos em que precisamos explicitamente de converter um valor para o tipo que precisamos. ```smart header="Não vamos falar sobre objetos" Nesse capítulo, não vamos falar sobre objetos. Por agora, vamos abordar apenas os tipos primitivos. From fa0fb4afb59edae2ee156597a138c852de892880 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 10:59:51 -0300 Subject: [PATCH 09/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 957881ec8..711cd2207 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -6,7 +6,7 @@ Por exemplo, `alert` converte automaticamente qualquer valor para string antes d Também existem casos em que precisamos explicitamente de converter um valor para o tipo que precisamos. -```smart header="Não vamos falar sobre objetos" +```smart header="Não vamos falar de objetos" Nesse capítulo, não vamos falar sobre objetos. Por agora, vamos abordar apenas os tipos primitivos. Mais tarde, após abordarmos objetos no capítulo , veremos como objetos se comportam em conversões de tipo. From 034216b0f635cdeae3caac0294e63b950cb4f8e2 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 10:59:57 -0300 Subject: [PATCH 10/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 711cd2207..7636c434c 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -16,7 +16,7 @@ Mais tarde, após abordarmos objetos no capítulo , ver As conversões para string acontecem quando precisamos da forma string de um valor. -Por exemplo, `alert(valor)` faz isso para mostrar `valor`. +Por exemplo, `alert(value)` faz isso para mostrar o valor. Também podemos usar a função `String(value)` para converter um valor para string: From 0dd1df1f7da4c18076bd0ec8bb858b8b557a00ee Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:00:05 -0300 Subject: [PATCH 11/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 7636c434c..3a933be20 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -36,7 +36,7 @@ Conversões para string são as mais fáceis. `false` se torna `"false"`, `null` As conversões numéricas acontecem automaticamente em funções e expressões matemáticas. -Por exemplo, quando `/` é usado em valores que não são number: +Por exemplo, quando `/` é usado com valores que não são números: ```js run alert( "6" / "2" ); // 3, strings viram numbers From 6d08502acf7264ab32fff3a1659d4d5726bfd83d Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:00:11 -0300 Subject: [PATCH 12/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 3a933be20..7bb3e9ebc 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -130,7 +130,7 @@ A conversão segue as seguintes regras: |`undefined`|`NaN`| |`null`|`0`| |`true` e `false` | `1` e `0` | -| `string` | Espaços em branco do início e do fim são removidos. Se a string que sobrar for vazia, o resultado é `0`. Senão, o número é "lido" a partir da string. Um erro nos dá `NaN`| +| `string` | A string é lida "como ela é", espaços em branco do início e do fim são ignorados. Uma string vazia, vira `0`. Um erro nos dá `NaN`| **`Conversões Booleanas`** -- Ocorrem em operações lógicas. Podem ser feitas com `Boolean(valor)`. From dead7a20b34633a19825074236dbb1592fc93abb Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:00:17 -0300 Subject: [PATCH 13/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 7bb3e9ebc..a7f023116 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -132,7 +132,7 @@ A conversão segue as seguintes regras: |`true` e `false` | `1` e `0` | | `string` | A string é lida "como ela é", espaços em branco do início e do fim são ignorados. Uma string vazia, vira `0`. Um erro nos dá `NaN`| -**`Conversões Booleanas`** -- Ocorrem em operações lógicas. Podem ser feitas com `Boolean(valor)`. +**`Conversões Booleanas`** -- Ocorrem em operações lógicas. Podem ser feitas com `Boolean(value)`. Seguem as regras: From 5d90f6aba46373fd4eccc0f81c211070cea58ddd Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:00:23 -0300 Subject: [PATCH 14/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index a7f023116..cc983c997 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -144,7 +144,7 @@ Seguem as regras: A maior parte dessas regras são fáceis de entender e memorizar. Exceções notáveis em que as pessoas geralmente erram são: -- `Number(undefined)` vira `NaN`, não `0`. +- `undefined` é `NaN` como número, não `0`. - `"0"` e strings só com espaço `" "` são `true` como booleanos. Objetos não são citados aqui. Retornaremos depois no capítulo que é dedicado exclusivamente para objetos, após aprendermos coisas mais básicas de JavaScript. From 9e846be96eaa5b3f807b77deeb5d0e9371473288 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:01:21 -0300 Subject: [PATCH 15/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index cc983c997..8b9be36fa 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -145,6 +145,6 @@ Seguem as regras: A maior parte dessas regras são fáceis de entender e memorizar. Exceções notáveis em que as pessoas geralmente erram são: - `undefined` é `NaN` como número, não `0`. -- `"0"` e strings só com espaço `" "` são `true` como booleanos. +- `"0"` e strings só com espaços `" "` são `true` como booleanos. Objetos não são citados aqui. Retornaremos depois no capítulo que é dedicado exclusivamente para objetos, após aprendermos coisas mais básicas de JavaScript. From 912ea5cbb870d8afbb75f66569a4d30db41f7f1d Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:01:27 -0300 Subject: [PATCH 16/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 8b9be36fa..ee051e2fa 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -147,4 +147,4 @@ A maior parte dessas regras são fáceis de entender e memorizar. Exceções not - `undefined` é `NaN` como número, não `0`. - `"0"` e strings só com espaços `" "` são `true` como booleanos. -Objetos não são citados aqui. Retornaremos depois no capítulo que é dedicado exclusivamente para objetos, após aprendermos coisas mais básicas de JavaScript. +Objetos não são citados aqui. Retornaremos depois no capítulo que é dedicado exclusivamente a objetos, após aprendermos coisas mais básicas de JavaScript. From c2bd24208f320d00b1ae29e1e101b57ae618fa88 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:02:12 -0300 Subject: [PATCH 17/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index ee051e2fa..162e69519 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -42,7 +42,7 @@ Por exemplo, quando `/` é usado com valores que não são números: alert( "6" / "2" ); // 3, strings viram numbers ``` -Podemos usar a função Number(`valor`) para converter `valor` para number. +Podemos usar a função Number(`value) para converter `value` para number. ```js run let str = "123"; From 0bfdecdc4cd11e063f3faac98bb4a332957ae476 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:02:41 -0300 Subject: [PATCH 18/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 162e69519..9d295c1a1 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -129,7 +129,7 @@ A conversão segue as seguintes regras: |-------|-------------| |`undefined`|`NaN`| |`null`|`0`| -|`true` e `false` | `1` e `0` | +|true / false| `1 / 0` | | `string` | A string é lida "como ela é", espaços em branco do início e do fim são ignorados. Uma string vazia, vira `0`. Um erro nos dá `NaN`| **`Conversões Booleanas`** -- Ocorrem em operações lógicas. Podem ser feitas com `Boolean(value)`. From 05e447c6289ae4f29e73ef0328ecade56ab2dde0 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:03:11 -0300 Subject: [PATCH 19/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 9d295c1a1..999ee6fc6 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -121,7 +121,7 @@ As três conversões mais comuns são para string, number e boolean. **`Conversões para String`** -- Ocorrem quando mostramos algum valor. Podem ser explicitamente feitas com `String(valor)`. As conversões para string geralmente é obvia em tipos primitivos. -**`Conversões Numéricas`** -- Ocorrem em operações matemáticas. Podem ser feitas com `Number(valor)`. +**`Conversões Numéricas`** -- Ocorrem em operações matemáticas. Podem ser feitas com `Number(value)`. A conversão segue as seguintes regras: From 5946a7ca2976e50b31295b85cad7169d193a3d5e Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:03:40 -0300 Subject: [PATCH 20/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 999ee6fc6..fa01569e8 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -39,7 +39,7 @@ As conversões numéricas acontecem automaticamente em funções e expressões m Por exemplo, quando `/` é usado com valores que não são números: ```js run -alert( "6" / "2" ); // 3, strings viram numbers +alert( "6" / "2" ); // 3, strings viram números ``` Podemos usar a função Number(`value) para converter `value` para number. From 989bf4643bb08bdf52024924712212dea6b6419b Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:04:08 -0300 Subject: [PATCH 21/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index fa01569e8..1c939267a 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -119,7 +119,7 @@ alert( Boolean(" ") ); // espaços também são true (toda string não-vazia se As três conversões mais comuns são para string, number e boolean. -**`Conversões para String`** -- Ocorrem quando mostramos algum valor. Podem ser explicitamente feitas com `String(valor)`. As conversões para string geralmente é obvia em tipos primitivos. +**`Conversões para String`** -- Ocorrem quando mostramos algum valor. Podem ser explicitamente feitas com `String(value)`. As conversões para string geralmente são óbvias com tipos primitivos. **`Conversões Numéricas`** -- Ocorrem em operações matemáticas. Podem ser feitas com `Number(value)`. From 525fd2a80d1c89eff316c8b0363c9d71411a043a Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:06:04 -0300 Subject: [PATCH 22/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 1c939267a..5f5c9da5b 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -48,7 +48,7 @@ Podemos usar a função Number(`value) para converter `value` para number. let str = "123"; alert(typeof str); // string -let num = Number(str); // vira um number: 123 +let num = Number(str); // vira o número 123 alert(typeof num); // number ``` From 74edbc0229f42402d89f4b80d8cd73bea1fbbb40 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:07:46 -0300 Subject: [PATCH 23/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 5f5c9da5b..37420221e 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -53,7 +53,7 @@ let num = Number(str); // vira o número 123 alert(typeof num); // number ``` -Conversões explícitas geralmente são obrigatórias quando estamos obtendo um valor de uma fonte baseada em string - como um texto - mas esperamos um receber um valor numérico. +Conversões explícitas geralmente são obrigatórias quando estamos a ler um valor de uma fonte baseada em string - como um texto - mas esperamos receber um valor numérico. Se a string não é um valor numérico válido, o resultado da conversão é `NaN`. Por exemplo: From 3b63abd31cea3dbbeb3ef9c96431e58d0c2ced77 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:07:57 -0300 Subject: [PATCH 24/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 37420221e..0b25d5804 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -58,7 +58,7 @@ Conversões explícitas geralmente são obrigatórias quando estamos a ler um va Se a string não é um valor numérico válido, o resultado da conversão é `NaN`. Por exemplo: ```js run -let age = Number("uma string ao invés de um number"); +let age = Number("uma string ao invés de um número"); alert(age); // NaN, conversão falhou ``` From b70d21c9e4fc8004d976064251409632c53bd1a6 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:08:07 -0300 Subject: [PATCH 25/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 0b25d5804..8ef7b1036 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -60,7 +60,7 @@ Se a string não é um valor numérico válido, o resultado da conversão é `Na ```js run let age = Number("uma string ao invés de um número"); -alert(age); // NaN, conversão falhou +alert(age); // NaN, a conversão falhou ``` Regras de conversões numéricas: From ad38a7d414abbeefa8e0f749fa679f4d2850f14b Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:08:31 -0300 Subject: [PATCH 26/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 8ef7b1036..5dc4dcd13 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -69,7 +69,7 @@ Regras de conversões numéricas: |-------|-------------| |`undefined`|`NaN`| |`null`|`0`| -|`true` e `false` | `1` e `0` | +|true e false| `1` e `0` | | `string` | Espaços em branco do início e do fim são removidos. Se a string que sobrar for vazia, o resultado é `0`. Senão, o número é "lido" a partir da string. Um erro nos dá `NaN`| Exemplos: From dd0ff8e056636ee7510ad22ddfcde550ff1c6cfd Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:08:43 -0300 Subject: [PATCH 27/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index 5dc4dcd13..f1f431aeb 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -76,7 +76,7 @@ Exemplos: ```js run alert( Number(" 123 ") ); // 123 -alert( Number("123z") ); // NaN (Erro ao ler "z") +alert( Number("123z") ); // NaN (Erro ao ler um número em "z") alert( Number(true) ); // 1 alert( Number(false) ); // 0 ``` From ab8344b5956dff1f8c5d28f74dec90fe25f5bb57 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:09:03 -0300 Subject: [PATCH 28/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index f1f431aeb..f5d18a76d 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -83,7 +83,7 @@ alert( Number(false) ); // 0 Note que `null` e `undefined` se comportam de maneira diferente: `null` se torna zero, enquanto `undefined` vira `NaN`. -A maioria dos operadores matemáticos também performam essa conversão, na qual veremos no próximo capítulo. +A maioria dos operadores matemáticos também executam essa conversão, o que veremos no próximo capítulo. ## Conversões Booleanas From fc123074f39b22b9885db727584d3184b9200319 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:09:13 -0300 Subject: [PATCH 29/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index f5d18a76d..b929b09d8 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -89,7 +89,7 @@ A maioria dos operadores matemáticos também executam essa conversão, o que ve Conversões booleanas são as mais simples de todas. -Acontecem em uma operação lógica (depois veremos testes de condição e outras coisas similares), mas também podem acontecer explicitamente ao usar a função `Boolean(valor)`. +Acontecem em operações lógicas (depois veremos testes de condição e outras coisas similares), mas também podem acontecer explicitamente ao usar a função `Boolean(value)`. A regra de conversão: From 04ead4c0669c22768059bfac71e9cffd3e3e40a2 Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Tue, 20 Jul 2021 11:09:25 -0300 Subject: [PATCH 30/31] Update 1-js/02-first-steps/07-type-conversions/article.md Co-authored-by: Osvaldo Dias dos Santos --- 1-js/02-first-steps/07-type-conversions/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index b929b09d8..b4c2210dc 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -107,7 +107,7 @@ alert( Boolean("") ); // false ``` ````warn header="Note que uma string com um zero `\"0\"` é `true`" -Algumas linguagens de programação (isto é, PHP), tratam `\"0\"` como `false`. Mas no JavaScript, uma string não-vazia sempre é `true`. +Algumas linguagens de programação (como PHP), tratam `\"0\"` como `false`. Mas no JavaScript, uma string não-vazia sempre é `true`. ```js run alert( Boolean("0") ); // true From 5177ed74043e8f92a6f3c28c44f1aa9a129cc34b Mon Sep 17 00:00:00 2001 From: PauloBacelar <55861393+PauloBacelar@users.noreply.github.com> Date: Mon, 27 Jun 2022 11:46:27 -0300 Subject: [PATCH 31/31] Made changes suggested by @jonnathan-ls --- 1-js/02-first-steps/07-type-conversions/article.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/1-js/02-first-steps/07-type-conversions/article.md b/1-js/02-first-steps/07-type-conversions/article.md index b4c2210dc..88f14e8ac 100644 --- a/1-js/02-first-steps/07-type-conversions/article.md +++ b/1-js/02-first-steps/07-type-conversions/article.md @@ -42,7 +42,7 @@ Por exemplo, quando `/` é usado com valores que não são números: alert( "6" / "2" ); // 3, strings viram números ``` -Podemos usar a função Number(`value) para converter `value` para number. +Podemos usar a função `Number(value)` para converter `value` para um número. ```js run let str = "123"; @@ -94,7 +94,7 @@ Acontecem em operações lógicas (depois veremos testes de condição e outras A regra de conversão: - Valores que são intuitivamente "vazios", como "0", uma string vazia (""), `null`, `undefined` e `NaN`, viram `false`. -- Outras valores viram `true`. +- Outros valores viram `true`. Por exemplo: