chore(i18n,curriculum): update translations (#43046)
This commit is contained in:
@ -12,7 +12,7 @@ Retorne o menor índice em que um valor (segundo argumento) deve ser inserido no
|
||||
|
||||
Por exemplo, `getIndexToIns([1,2,3,4], 1.5)` deve retornar `1` porque é maior que `1` (índice 0), mas menor que `2` (índice 1).
|
||||
|
||||
Da mesma forma, `getIndexToIns([20,3,5], 19)` deve retornar `2` pois uma vez que o array foi sorteado irá se parecer como `[3,5,20]` e `19` é menor que `20` (índice 2) e maior que `5` (índice 1).
|
||||
Da mesma forma, `getIndexToIns([20,3,5], 19)` deve retornar `2` pois uma vez que o array foi sorteado se parecerá com `[3,5,20]` e `19` é menor que `20` (índice 2) e maior que `5` (índice 1).
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -11,7 +11,7 @@ dashedName: iterate-with-javascript-while-loops
|
||||
|
||||
Você pode rodar o mesmo código várias vezes usando um laço.
|
||||
|
||||
O primeiro tipo de laço que aprenderemos é chamado de laço `while` porque ele irá rodar enquanto uma condição específica for verdadeira e irá parar uma vez que a condição não for mais verdadeira.
|
||||
O primeiro tipo de laço que aprenderemos é chamado de laço `while` porque ele rodará enquanto uma condição específica for verdadeira e vai parar uma vez que a condição não for mais verdadeira.
|
||||
|
||||
```js
|
||||
var ourArray = [];
|
||||
|
@ -22,13 +22,13 @@ myTest();
|
||||
console.log(loc);
|
||||
```
|
||||
|
||||
A chamada da função `myTest()` irá exibir a string `foo` no console. A linha `console.log(loc)` irá lançar um erro, já que `loc` não foi definido fora da função.
|
||||
A chamada da função `myTest()` vai exibir a string `foo` no console. A linha `console.log(loc)` vai lançar um erro, já que `loc` não foi definido fora da função.
|
||||
|
||||
# --instructions--
|
||||
|
||||
O editor possui dois `console.log` para te ajudar a ver o que está acontecendo. Verifique o console enquanto codifica para ver como muda. Declare uma variável local `myVar` dentro de `myLocalScope` e rode os testes.
|
||||
|
||||
**Nota:** O console ainda exibirá `ReferenceError: myVar is not defined`, mas isso não causará falha nos testes.
|
||||
**Observação:** o console ainda exibirá `ReferenceError: myVar is not defined`, mas isso não causará falha nos testes.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -22,7 +22,7 @@ console.log(oneDown);
|
||||
console.log(threeArr);
|
||||
```
|
||||
|
||||
O primeiro `consol.log` exibirá o valor `6`, e o segundo irá exibir o valor `[1, 4]`.
|
||||
O primeiro `console.log` exibirá o valor `6`, e o segundo exibirá o valor `[1, 4]`.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -45,7 +45,7 @@ Isto é um array o qual contém um objeto dentro dele. O objeto possui vários p
|
||||
}
|
||||
```
|
||||
|
||||
**Nota:** Você precisará colocar uma vírgula após cada objeto no array, a não ser que for o último objeto no array.
|
||||
**Observação:** você precisará colocar uma vírgula após cada objeto no array, a não ser que for o último objeto no array.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -20,7 +20,7 @@ ourArray[0] = 15;
|
||||
|
||||
`ourArray` agora tem o valor `[15, 40, 30]`.
|
||||
|
||||
**Nota:** Não deve ter espaços entre o nome do array e os colchetes, como `array [0]`. Embora JavaScript é capaz de processar isso corretamente, isso pode causar confusão em outros programadores lendo o seu código.
|
||||
**Observação:** não deve ter espaços entre o nome do array e os colchetes, como `array [0]`. Embora JavaScript é capaz de processar isso corretamente, isso pode causar confusão em outros programadores lendo o seu código.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -24,7 +24,7 @@ switch(val) {
|
||||
}
|
||||
```
|
||||
|
||||
Todos os casos para 1, 2 e 3 irão produzir o mesmo resultado.
|
||||
Todos os casos para 1, 2 e 3 vão produzir o mesmo resultado.
|
||||
|
||||
# --instructions--
|
||||
|
||||
@ -33,7 +33,7 @@ Escreva uma instrução para definir `answer` para os seguintes intervalos:
|
||||
`4-6` - `Mid`
|
||||
`7-9` - `High`
|
||||
|
||||
**Nota:** Você precisará ter uma instrução `case` para cada número no intervalo.
|
||||
**Observação:** você precisará ter uma instrução `case` para cada número no intervalo.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -11,13 +11,13 @@ dashedName: practice-comparing-different-values
|
||||
|
||||
Nos últimos dois desafios, aprendemos sobre o operador de igualdade (`==`) e o operador de igualdade estrita (`===`). Vamos fazer uma breve revisão e praticar usando esses operadores mais uma vez.
|
||||
|
||||
Se os valores sendo comparados não são do mesmo tipo, o operador de igualdade irá fazer a conversão de tipo e, então, avaliar os valores. No entanto, o operador de igualdade estrita irá comparar ambos os tipos de dados e os valores, sem converter de um tipo para outro.
|
||||
Se os valores sendo comparados não são do mesmo tipo, o operador de igualdade fará a conversão de tipo e, então, avaliará os valores. No entanto, o operador de igualdade estrita vai comparar ambos os tipos de dados e os valores, sem converter de um tipo para outro.
|
||||
|
||||
**Exemplos**
|
||||
|
||||
`3 == '3'` retorna `true` porque JavaScript faz a conversão de tipo de string para número. `3 === '3'` retorna falso porque os tipos são diferentes e não é feita a conversão de tipo.
|
||||
|
||||
**Nota:** Em JavaScript, você pode determinar o tipo de uma variável ou de um valor, com o operador `typeof`, como se segue:
|
||||
**Observação:** em JavaScript, você pode determinar o tipo de uma variável ou de um valor, com o operador `typeof`, como se segue:
|
||||
|
||||
```js
|
||||
typeof 3
|
||||
|
@ -33,7 +33,7 @@ Aqui `badStr` lançará um erro.
|
||||
|
||||
Na string <dfn>goodStr</dfn> acima, você pode usar ambas as aspas com segurança ao usar a barra invertida `\` como um caractere de escapamento.
|
||||
|
||||
**Nota:** A barra invertida `\` não deve ser confundida com a barra comum `/`. Elas não fazem a mesma coisa.
|
||||
**Observação:** a barra invertida `\` não deve ser confundida com a barra comum `/`. Elas não fazem a mesma coisa.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -18,7 +18,7 @@ Você começa com uma função `updateRecords` que recebe um objeto literal, `re
|
||||
- Se `prop` for `tracks` e `value` não for uma string vazia, adicione `value` ao final do array existente de `tracks` do álbum.
|
||||
- Se `value` for uma string vazia, remova a propriedade `prop` recebida do álbum.
|
||||
|
||||
**Nota:** Uma cópia do objeto `recordCollection` é usada para testes.
|
||||
**Observação:** uma cópia do objeto `recordCollection` é usada para testes.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -24,7 +24,7 @@ var myVar;
|
||||
myVar = 5;
|
||||
```
|
||||
|
||||
Primeiro, esse código cria uma variável chamada `myVar`. Em seguida, o código atribui `5` para `myVar`. Agora, se `myVar` aparece novamente no código, o programa irá tratar como se fosse `5`.
|
||||
Primeiro, esse código cria uma variável chamada `myVar`. Em seguida, o código atribui `5` para `myVar`. Agora, se `myVar` aparece novamente no código, o programa vai tratar como se fosse `5`.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -11,7 +11,7 @@ dashedName: understanding-boolean-values
|
||||
|
||||
Outro tipo de dado é o <dfn>Boolean</dfn>. Booleanos podem ser apenas dois valores: `true` ou `false`. Eles basicamente são interruptores pequenos, onde `true` é ligado e `false` é desligado. Esses dois estados são mutuamente exclusivos.
|
||||
|
||||
**Nota:** Valores booleanos nunca são escritos com aspas. As strings `"true"` e `"false"` não são Booleanos e não tem nenhum significado especial em JavaScript.
|
||||
**Observação:** valores booleanos nunca são escritos com aspas. As strings `"true"` e `"false"` não são Booleanos e não tem nenhum significado especial em JavaScript.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -9,9 +9,9 @@ dashedName: word-blanks
|
||||
|
||||
# --description--
|
||||
|
||||
Nós vamos agora usar nosso conhecimento de strings para criar um "[Mad Libs](https://en.wikipedia.org/wiki/Mad_Libs)" estilo de jogo de palavras que chamamos de "Palavras em Branco". Você irá criar uma frase no estilo "Preencha os Espaços em Branco" (opcionalmente humorosa).
|
||||
Nós vamos agora usar nosso conhecimento de strings para criar um "[Mad Libs](https://en.wikipedia.org/wiki/Mad_Libs)" estilo de jogo de palavras que chamamos de "Palavras em Branco". Você criará uma frase no estilo "Preencha os Espaços em Branco" (opcionalmente humorosa).
|
||||
|
||||
Em um jogo "Mad Libs", você recebe frases com algumas palavras faltando, como substantivos, verbos, adjetivos e advérbios. Você então irá preencher os pedaços faltantes com palavras de sua escolha em uma forma que a frase completa faça sentido.
|
||||
Em um jogo "Mad Libs", você recebe frases com algumas palavras faltando, como substantivos, verbos, adjetivos e advérbios. Você então preencherá os pedaços faltantes com palavras de sua escolha em uma forma que a frase completa faça sentido.
|
||||
|
||||
Considere a frase - Era realmente **\_\_\_\_** e nós **\_\_\_\_** nós mesmos **\_\_\_\_**. Essa sentença possui três pedaços faltando - um adjetivo, um verbo e um advérbio, e nós podemos adicionar palavras de nossa escolha para completar. Em seguida, podemos atribuir a frase completa para uma variável como se segue:
|
||||
|
||||
|
@ -19,7 +19,7 @@ function functionName() {
|
||||
}
|
||||
```
|
||||
|
||||
Você pode chamar ou <dfn>invocar</dfn> essa função ao usar seu nome seguido de parênteses, da seguinte forma: `functionName();` Cada vez que a função é chamada irá imprimir no console a mensagem `Hello World`. Todo o código entre as chaves será executado toda vez que uma função for chamada.
|
||||
Você pode chamar ou <dfn>invocar</dfn> essa função ao usar seu nome seguido de parênteses, da seguinte forma: `functionName();` Cada vez que a função é chamada imprimirá no console a mensagem `Hello World`. Todo o código entre as chaves será executado toda vez que uma função for chamada.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -8,7 +8,7 @@ dashedName: catch-arguments-passed-in-the-wrong-order-when-calling-a-function
|
||||
|
||||
# --description--
|
||||
|
||||
Continuando a discussão sobre chamada de funções, o próximo bug para prestar atenção é quando os argumentos de uma função são fornecidos na ordem incorreta. Se os argumentos forem de diferentes tipos, tal como uma função esperando um array e um inteiro, isso irá provavelmente lançar um erro de tempo de execução. Se os argumentos são do mesmo tipo (todos os inteiros, por exemplo), então a lógica do código não fará sentido. Certifique-se de fornecer todos os argumentos exigidos, na ordem adequada para evitar esses problemas.
|
||||
Continuando a discussão sobre chamada de funções, o próximo bug para prestar atenção é quando os argumentos de uma função são fornecidos na ordem incorreta. Se os argumentos forem de diferentes tipos, tal como uma função esperando um array e um inteiro, isso provavelmente lançará um erro de tempo de execução. Se os argumentos são do mesmo tipo (todos os inteiros, por exemplo), então a lógica do código não fará sentido. Certifique-se de fornecer todos os argumentos exigidos, na ordem adequada para evitar esses problemas.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -26,7 +26,7 @@ if (x = y) {
|
||||
}
|
||||
```
|
||||
|
||||
Nesse exemplo, o bloco de código dentro da instrução `if` irá rodar para qualquer valor de `y`, a não ser que `y` seja falso. O bloco de `else`, que nós esperamos ser executado aqui, não irá realmente rodar.
|
||||
Nesse exemplo, o bloco de código dentro da instrução `if` vai rodar para qualquer valor de `y`, a não ser que `y` seja falso. O bloco de `else`, que nós esperamos ser executado aqui, não vai realmente rodar.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -24,7 +24,7 @@ function loopy() {
|
||||
|
||||
# --instructions--
|
||||
|
||||
A função `myFunc()` contém um laço infinito porque a condição de parada `i != 4` nunca será `false` (e então quebrar o laço) - `i` irá incrementar em 2 a cada iteração, e passa direto por 4 já que `i` é ímpar no início. Corrija o operador de comparação para que o laço só rode enquanto `i` for menor ou igual a 4.
|
||||
A função `myFunc()` contém um laço infinito porque a condição de parada `i != 4` nunca será `false` (e então quebrar o laço) - `i` vai incrementar em 2 a cada iteração, e passa direto por 4 já que `i` é ímpar no início. Corrija o operador de comparação para que o laço só rode enquanto `i` for menor ou igual a 4.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -20,7 +20,7 @@ O console da freeCodeCamp é apagado antes de cada execução de testes e, para
|
||||
|
||||
Se você gostaria de ver todos os logs em todos os testes, execute os testes e abra o console do navegador. Se preferir usar o console do navegador e quiser que ele imite o console da freeCodeCamp, coloque `console.clear()` antes de qualquer outra chamada ao `console`, para apagar o console do navegador.
|
||||
|
||||
**Nota:** `console.log` dentro de funções são impressas no console da freeCodeCamp toda vez que essas funções forem chamadas. Isso pode ajudar a depurar (ou debugar) funções que são chamadas durante os testes.
|
||||
**Observação:** `console.log` dentro de funções é impresso no console do freeCodeCamp toda vez que essas funções forem chamadas. Isso pode ajudar a depurar (ou debugar) funções que são chamadas durante os testes.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -12,7 +12,7 @@ Ambos o Chrome e o Firefox possui excelentes consoles JavaScript, também conhec
|
||||
|
||||
Você pode encontrar Developer tools no menu do seu Chrome ou Web Console no menu do Firefox. Se você estiver usando um navegador diferente, ou um telefone móvel, recomendamos fortemente mudar para o Firefox ou Chrome Desktop.
|
||||
|
||||
O método `console.log()`, o qual "imprime" a saída do que está nos seus parênteses no console, irá provavelmente ser a ferramenta de debug mais útil. Colocá-lo em pontos estratégicos no seu código pode te mostrar os valores intermediários de variáveis. É uma boa prática ter uma ideia do que deveria ser a saída antes de olhar o que é. Ter pontos de verificação para ver o status de seus cálculos ao longo do seu código ajudará a encontrar onde o problema está.
|
||||
O método `console.log()`, o qual "imprime" a saída do que está nos seus parênteses no console, provavelmente será a ferramenta de debug mais útil. Colocá-lo em pontos estratégicos no seu código pode te mostrar os valores intermediários de variáveis. É uma boa prática ter uma ideia do que deveria ser a saída antes de olhar o que é. Ter pontos de verificação para ver o status de seus cálculos ao longo do seu código ajudará a encontrar onde o problema está.
|
||||
|
||||
Aqui está um exemplo para imprimir a string `Hello world!` no console:
|
||||
|
||||
|
@ -23,7 +23,7 @@ console.log(numArray);
|
||||
console.log(i);
|
||||
```
|
||||
|
||||
Aqui o console irá exibir os valores `[0, 1, 2]` e `3`.
|
||||
Aqui o console vai exibir os valores `[0, 1, 2]` e `3`.
|
||||
|
||||
Com a palavra-chave `var`, `i` é declarado globalmente. Então quando `i++` é executado, ele atualiza a variável global. Esse código é semelhante ao seguinte:
|
||||
|
||||
@ -37,9 +37,9 @@ console.log(numArray);
|
||||
console.log(i);
|
||||
```
|
||||
|
||||
Aqui o console irá exibir os valores `[0, 1, 2]` e `3`.
|
||||
Aqui o console vai exibir os valores `[0, 1, 2]` e `3`.
|
||||
|
||||
Este comportamento causará problemas se você criasse uma função e armazená-la para depois utilizar dentro de um laço `for` que utiliza a variável `i`. Isso se deve ao fato da função armazenada sempre irá se referir ao valor da variável global `i` atualizada.
|
||||
Este comportamento causará problemas se você criasse uma função e armazená-la para depois utilizar dentro de um laço `for` que utiliza a variável `i`. Isso se deve ao fato da função armazenada sempre vai se referir ao valor da variável global `i` atualizada.
|
||||
|
||||
```js
|
||||
var printNumTwo;
|
||||
@ -53,7 +53,7 @@ for (var i = 0; i < 3; i++) {
|
||||
console.log(printNumTwo());
|
||||
```
|
||||
|
||||
Aqui o console irá exibir o valor `3`.
|
||||
Aqui o console vai exibir o valor `3`.
|
||||
|
||||
Como você pode ver, `printNumTwo()` exibe 3 e não 2. Isso se deve ao fato do valor atribuído a `i` foi atualizado e `printNumTwo()` retorna a variável global `i` e não o valor que `i` tinha quando a função foi criada dentro do laço for. A palavra-chave `let` não segue este comportamento:
|
||||
|
||||
@ -70,7 +70,7 @@ console.log(printNumTwo());
|
||||
console.log(i);
|
||||
```
|
||||
|
||||
Aqui o console irá exibir o valor `2`, e um erro que `i is not defined (i não foi definido)`.
|
||||
Aqui o console vai exibir o valor `2`, e um erro que `i is not defined` (i não foi definido).
|
||||
|
||||
`i` não foi definido porque não foi declarado no escopo global. É declarado apenas dentro da declaração do laço `for`. `printNumTwo()` retornou o valor correto porque três variáveis `i` distintas com valores únicos (0, 1 e 2) foram criados com a palavra-chave `let` dentro da declaração do laço.
|
||||
|
||||
|
@ -8,7 +8,7 @@ dashedName: create-a-javascript-promise
|
||||
|
||||
# --description--
|
||||
|
||||
Uma promessa em JavaScript é exatamente o que parece - você faz a promessa de que irá fazer uma tarefa, geralmente de forma assíncrona. Quando a tarefa é finalizada, ou você cumpriu a promessa ou falhou ao tentar. Por ser uma função construtora, você precisa utilizar a palavra-chave `new` para criar uma `Promise`. Ele recebe uma função, como seu arguemento, com dois parâmetros - `resolve` e `reject`. Esses métodos são usados para determinar o resultado da promessa. A sintaxe se parecesse com isso:
|
||||
Uma promessa em JavaScript é exatamente o que parece - você faz a promessa de que vai fazer uma tarefa, geralmente de forma assíncrona. Quando a tarefa é finalizada, ou você cumpriu a promessa ou falhou ao tentar. Por ser uma função construtora, você precisa utilizar a palavra-chave `new` para criar uma `Promise`. Ele recebe uma função, como seu arguemento, com dois parâmetros - `resolve` e `reject`. Esses métodos são usados para determinar o resultado da promessa. A sintaxe se parecesse com isso:
|
||||
|
||||
```js
|
||||
const myPromise = new Promise((resolve, reject) => {
|
||||
|
@ -26,7 +26,7 @@ I am ${person.age} years old.`;
|
||||
console.log(greeting);
|
||||
```
|
||||
|
||||
O console irá exibir as strings `Hello, my name is Zodiac Hasbro!` e `I am 56 years old.`.
|
||||
O console vai exibir as strings `Hello, my name is Zodiac Hasbro!` e `I am 56 years old.`.
|
||||
|
||||
Muitas coisas aconteceram aqui. Primeiro, o exemplo utiliza crases, ou backticks em Inglês, (`` ` ``), ao invés de aspas (`'` ou `"`), ao redor da string. Segundo, note que a string tem mais de uma linha, tanto no código quanto na saída. Isso torna desnecessário inserir `\n` dentro das strings. A sintaxe `${variable}` usada acima é um espaço reservado (placeholder). Basicamente, você não terá mais que usar concatenação com o operador `+`. Para adicionar o valor de uma variável à string, você a envolve com `${` e `}`. Além de poder usar variáveis, você pode incluir outras expressões. Como por exemplo `${a + b}`. Essa nova maneira de criar strings te dá mais flexibilidade na hora de criar string complexas.
|
||||
|
||||
|
@ -21,7 +21,7 @@ O console irá exibir um erro devido à reatribuição do valor de `FAV_PET`.
|
||||
|
||||
Como você pode ver, tentar reatribuir uma variável declarada com `const` lançará um erro. Você sempre deve nomear variáveis que você não quer reatribuir, usando a palavra-chave `const`. Isso ajuda quando você acidentalmente tenta reatribuir uma variável que deveria ser constante. Uma prática comum ao nomear constantes é colocar todas as letras em maiúsculas, com palavras separadas por sublinhado (underscore ou underline).
|
||||
|
||||
**Observação:** É comum que os desenvolvedores usem nomes de variáveis maiúsculas para valores imutáveis e minúsculas ou camelCase para valores mutáveis (objetos e arrays). Em um desafio posterior, você verá um exemplo de um nome de variável em minúsculo usado para um array.
|
||||
**Observação:** é comum que os desenvolvedores usem nomes de variáveis maiúsculas para valores imutáveis e minúsculas ou camelCase para valores mutáveis (objetos e arrays). Em um desafio posterior, você verá um exemplo de um nome de variável em minúsculo usado para um array.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -16,7 +16,7 @@ var camper = 'David';
|
||||
console.log(camper);
|
||||
```
|
||||
|
||||
Aqui o console irá exibir a string `David`.
|
||||
Aqui o console vai exibir a string `David`.
|
||||
|
||||
Como você pode ver no código acima, a variável `camper` é originalmente declarada com o valor `James` e então substituída pelo valor `David`. Em uma aplicação pequena, você pode não encontrar esse tipo de problema, mas quando seu código se tornar maior, você pode acidentalmente sobrescrever uma variável que você não tinha a intenção. Como esse comportamente não lança nenhum erro, procurar e corrigir bugs se torna mais difícil.
|
||||
Para resolver esse potencial problema com a palavra-chave `var`, uma nova palavra-chave chamada `let` foi introduzida no ES6. Se você tentar substituir `var` por `let` nas declarações de variável do código acima, o resultado será um erro.
|
||||
@ -33,7 +33,7 @@ Esse erro pode ser visto no console do seu navegador. Então, diferente de `var`
|
||||
x = 3.14;
|
||||
```
|
||||
|
||||
O ´codigo acima irá exibir o erro: `x is not defined`.
|
||||
O codigo acima vai exibir o erro: `x is not defined`.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -10,7 +10,7 @@ dashedName: mutate-an-array-declared-with-const
|
||||
|
||||
Variáveis declaradas com `const` têm muitos casos de uso no JavaScript moderno.
|
||||
|
||||
Alguns desenvolvedores preferem criar todas suas variáveis usando `const`, a menos que eles saibam que irão precisar reatribuir o valor. Apenas nesse caso, eles usam `let`.
|
||||
Alguns desenvolvedores preferem criar todas suas variáveis usando `const`, a menos que eles saibam que vão precisar reatribuir o valor. Apenas nesse caso, eles usam `let`.
|
||||
|
||||
No entanto, é importante entender que objetos (incluindo arrays e funções) atribuídos a uma variável usando `const` ainda são mutáveis. Usar a declaração `const` só impede a reatribuição do identificador (nome) da variável.
|
||||
|
||||
|
@ -23,7 +23,7 @@ obj.newProp = "Test";
|
||||
console.log(obj);
|
||||
```
|
||||
|
||||
As atribuições `obj.review` e `obj.newProp` não irão funcionar e o console irá exibir o valor `{ name: "FreeCodeCamp", review: "Awesome" }`.
|
||||
As atribuições `obj.review` e `obj.newProp` não vão funcionar e o console vai exibir o valor `{ name: "FreeCodeCamp", review: "Awesome" }`.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -14,7 +14,7 @@ dashedName: reuse-javascript-code-using-import
|
||||
import { add } from './math_functions.js';
|
||||
```
|
||||
|
||||
Aqui, `import` irá encontrar a função `add` no arquivo `math_functions.js`, importar apenas essa função e ignorar o resto. O `./` diz ao import para procurar pelo arquivo `math_functions.js` no mesmo diretório que o arquivo atual. O caminho relativo do arquivo (`./`) e a extensão do arquivo (`.js`) são necessários ao usar import dessa forma.
|
||||
Aqui, `import` encontrará a função `add` no arquivo `math_functions.js`, importar apenas essa função e ignorar o resto. O `./` diz ao import para procurar pelo arquivo `math_functions.js` no mesmo diretório que o arquivo atual. O caminho relativo do arquivo (`./`) e a extensão do arquivo (`.js`) são necessários ao usar import dessa forma.
|
||||
|
||||
Você pode importar mais de um item do arquivo ao adicioná-los na instrução `import` dessa forma:
|
||||
|
||||
|
@ -50,7 +50,7 @@ Na classe, crie um `getter` para obter a temperatura em Celsius e um `setter` pa
|
||||
|
||||
Lembre-se que `C = 5/9 * (F - 32)` e `F = C * 9.0 / 5 + 32`, aonde `F` é o valor da temperatura em Fahrenheit e `C` é o valor da mesma temperatura em Celsius.
|
||||
|
||||
**Nota:** Quando você implementa isso, você irá rastrar a temperatura dentro da classe em uma escala, ou Fahrenheit ou Celsius.
|
||||
**Observação:** quando você implementa isso, você vai rastrear a temperatura dentro da classe em uma escala, ou Fahrenheit ou Celsius.
|
||||
|
||||
Esse é o poder de um getter e um setter. Você está criando uma API para outro uso, que pode pegar o resultado correto independente de qual está rastreando.
|
||||
|
||||
|
@ -10,7 +10,7 @@ dashedName: diff-two-arrays
|
||||
|
||||
Compare dois arrays e retorne um novo array com qualquer item encontrado em apenas um dos dois arrays passados, mas não ambos. Em outras palavras, retorne a diferença simétrica de dois arrays.
|
||||
|
||||
**Nota:** Você pode retornar o array com seus elementos em qualquer ordem.
|
||||
**Observação:** você pode retornar o array com seus elementos em qualquer ordem.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -14,9 +14,9 @@ O primeiro argumento é a frase para realizar a busca e substituir.
|
||||
|
||||
O segundo argumento é a palavra que você substituirá (antes).
|
||||
|
||||
O terceiro argumento é com o que você irá substituir o segundo argumento (depois).
|
||||
O terceiro argumento é com o que você vai substituir o segundo argumento (depois).
|
||||
|
||||
**Nota:** Preserve a capitalização do primeiro caractere na palavra original quando você estiver substituindo. Por exemplo, se você quiser substituir a palavra `Book` com a palavra `dog`, deve ser substituído com `Dog`
|
||||
**Observação:** preserve a capitalização do primeiro caractere na palavra original quando você estiver substituindo. Por exemplo, se você quiser substituir a palavra `Book` com a palavra `dog`, deve ser substituído com `Dog`
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -10,7 +10,7 @@ dashedName: seek-and-destroy
|
||||
|
||||
Você receberá um array inicial (o primeiro argumento na função `destroyer`), seguido por um ou mais argumentos. Remova todos os elementos da matriz inicial que são do mesmo valor que esses argumentos.
|
||||
|
||||
**Nota:** Você tem que usar os `argumentos` do objeto.
|
||||
**Observação:** você tem que usar os `arguments` do objeto.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -12,7 +12,7 @@ Retorne `true` se a string fornecida for um palíndromo. Caso contrário, retorn
|
||||
|
||||
Um <dfn>palíndromo</dfn> é uma palavra ou frase que é dita da mesma maneira na ordem natural que na ordem inversa, ignorando pontuação, capitalização e espaçamento.
|
||||
|
||||
**Nota:** Você precisará remover **todos os caracteres não alfanuméricos** (pontuação, espaços e símbolos) e transforme tudo na mesma capitalização (letra em minúsculo ou maiúsculo) para verificar se determinada palavra ou frase é um palíndromo.
|
||||
**Observação:** você precisará remover **todos os caracteres não alfanuméricos** (pontuação, espaços e símbolos) e transforme tudo na mesma capitalização (letra em minúsculo ou maiúsculo) para verificar se determinada palavra ou frase é um palíndromo.
|
||||
|
||||
Vamos passar strings em diferentes formatos, como `racecar`, `RaceCarar` e `race CAR` entre outros.
|
||||
|
||||
|
@ -22,7 +22,7 @@ Bird.prototype = Object.create(Animal.prototype);
|
||||
Bird.prototype.constructor = Bird;
|
||||
```
|
||||
|
||||
Como adicional do que é herdado da classe `Animal`, você deseja adicionar o comportamento que é único de objetos `Bird`. Aqui, `Bird` irá definir a função `fly()`. As funções são adicionadas ao `protótipo` `Bird` da mesma forma que qualquer função construtora:
|
||||
Como adicional do que é herdado da classe `Animal`, você deseja adicionar o comportamento que é único de objetos `Bird`. Aqui, `Bird` definirá a função `fly()`. As funções são adicionadas ao `protótipo` `Bird` da mesma forma que qualquer função construtora:
|
||||
|
||||
```js
|
||||
Bird.prototype.fly = function() {
|
||||
|
@ -22,7 +22,7 @@ function Bird() {
|
||||
|
||||
O construtor define um objeto `Bird` com propriedades `name`, `color`, e `numLegs` definidos como Albert, blue e 2, respectivamente. Construtores seguem algumas convenções:
|
||||
|
||||
<ul><li>Construtores são definidos com a primeira letra do nome maiúscula para distinguir eles de outras funções que não são <code>constructors</code>.</li><li>Construtores usam a palavra-chave <code>this</code> para definir as propriedades do objeto que eles irão criar. Dentro do construtor, <code>this</code> referencia para um novo objeto quer irá ser criado.</li><li>Construtores definem propriedades e comportamentos em vez de retornar valores como outras funções podem fazer.</li></ul>
|
||||
<ul><li>Construtores são definidos com a primeira letra do nome maiúscula para distinguir eles de outras funções que não são <code>constructors</code>.</li><li>Construtores usam a palavra-chave <code>this</code> para definir as propriedades do objeto que eles criarão. Dentro do construtor, <code>this</code> referencia para um novo objeto quer vai ser criado.</li><li>Construtores definem propriedades e comportamentos em vez de retornar valores como outras funções podem fazer.</li></ul>
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -17,7 +17,7 @@ Animal.prototype.eat = function() {
|
||||
};
|
||||
```
|
||||
|
||||
Este e o próximo desafio irá abordar como reutilizar métodos de `Animal` dentro de `Bird` e `Dog` sem ter de definir os métodos novamente. Ele utiliza uma técnica chamada herança. Este desafio cobrirá o primeiro passo: fazer uma instância do `supertype` (ou parente). Você já sabe uma forma de criar instâncias de `Animal` utilizando o operador `new`:
|
||||
Este e o próximo desafio vai abordar como reutilizar métodos de `Animal` dentro de `Bird` e `Dog` sem ter de definir os métodos novamente. Ele utiliza uma técnica chamada herança. Este desafio cobrirá o primeiro passo: fazer uma instância do `supertype` (ou parente). Você já sabe uma forma de criar instâncias de `Animal` utilizando o operador `new`:
|
||||
|
||||
```js
|
||||
let animal = new Animal();
|
||||
|
@ -34,7 +34,7 @@ for (let property in duck) {
|
||||
console.log(ownProps);
|
||||
```
|
||||
|
||||
O console irá exibir o valor `["name", "numLegs"]`.
|
||||
O console vai exibir o valor `["name", "numLegs"]`.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -18,7 +18,7 @@ console.log(duck.constructor === Bird);
|
||||
console.log(beagle.constructor === Dog);
|
||||
```
|
||||
|
||||
Ambas as chamadas a `console.log` irão exibir `true` no console.
|
||||
Ambas as chamadas a `console.log` vão exibir `true` no console.
|
||||
|
||||
Note que a propriedade `construtor` é uma referência a função construtora que criou a instância. A vantagem da propriedade `construtor` é que se torna possível verificar essa propriedade para descobrir qual o tipo do objeto. Aqui está um exemplo de como isso poderia ser utilizado:
|
||||
|
||||
|
@ -30,7 +30,7 @@ As três chamadas a `match` retornam, na ordem, os valores: `["cat"]`, `["bat"]`
|
||||
|
||||
Capture todas as letras na string `quoteSample`.
|
||||
|
||||
**Nota:** Você quer encontrar tanto maiúsculas quanto minúsculas.
|
||||
**Observação:** você quer encontrar tanto maiúsculas quanto minúsculas.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
@ -32,7 +32,7 @@ As quatro chamadas a `match` retornarão os seguintes valores, nesta ordem: `["b
|
||||
|
||||
Use classe de caracteres de vogais (`a`, `e`, `i`, `o`, `u`) na sua regex `vowelRegex` para encontrar todas as vogais na string `quoteSample`.
|
||||
|
||||
**Nota:** Você quer encontrar tanto maiúsculas quanto minúsculas.
|
||||
**Observação:** você quer encontrar tanto maiúsculas quanto minúsculas.
|
||||
|
||||
# --hints--
|
||||
|
||||
|
Reference in New Issue
Block a user