fix: remove repl.it links portuguese challenge articles (#36208)

This commit is contained in:
Randell Dawson
2019-07-09 09:20:48 -07:00
committed by Parth Parth
parent ee952dee42
commit fc10e95a46
67 changed files with 112 additions and 250 deletions

View File

@ -86,8 +86,7 @@ A = {1, 2, 3}
```](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce)
[![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce) [Executar código](https://repl.it/C4II/0)
[![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce)
### Explicação do código:
* `push()` é usado para dividir o objeto _arguments_ em um array, _args_ .
@ -141,8 +140,7 @@ A = {1, 2, 3}
sym([1, 2, 3], [5, 2, 1, 4]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLoc/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* O método `slice()` é usado para dividir o objeto _arguments_ em um array, _args_ .
@ -176,8 +174,7 @@ A = {1, 2, 3}
sym([1, 2, 3], [5, 2, 1, 4]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/@ashenm/Symmetric-Difference)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* A função principal _sym ()_ cria um array a partir de _argumentos_ e reduz seus elementos utilizando a função auxiliar _diffArray ()_ para um único array.

View File

@ -38,7 +38,6 @@ function swap(a, b, arr){
`js function bubbleSort(array) { for (let i = 0; i < array.length; i++){ for (let j = 0; j < array.length-1-i; j++){ if (array[j] > array[j+1]) [array[j], array[j+1]] = [array[j+1], array[j]]; // Using ES6 array destructuring to swap } } return array; }`
* [Executar código](https://repl.it/@ezioda004/Bubble-Sort)
### Referências:

View File

@ -32,7 +32,6 @@ function insertionSort(array) {
}
```
* [Executar código](https://repl.it/@ezioda004/Insertion-Sort)
### Referências:

View File

@ -48,7 +48,6 @@ localeTitle: Implementar o Merge Sort
}
```
* [Executar código](https://repl.it/@ezioda004/Merge-Sort)
### Referências:

View File

@ -48,7 +48,6 @@ localeTitle: Implementar classificação rápida
}
```
* [Executar código](https://repl.it/@ezioda004/Quick-Sort)
### Referência:

View File

@ -106,8 +106,7 @@ Retorne o inventário completo em ordem alfabética.
updateInventory(curInv, newInv);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLok/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* O **índice** variável armazena a localização (índice) de um produto.
@ -192,8 +191,7 @@ Retorne o inventário completo em ordem alfabética.
updateInventory(curInv, newInv);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLol/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* O **índice** variável armazena a localização (índice) de um produto.
@ -268,8 +266,7 @@ Retorne o inventário completo em ordem alfabética.
updateInventory(curInv, newInv);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/MQvv/latest)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Converta a matriz de inventário atual **arr1** em uma matriz unidimensional para que o método `indexOf()` possa ser usado para verificar a existência de novos itens de entrega no estoque atual.

View File

@ -145,8 +145,7 @@ function permAlone(str) {
permAlone('aab');
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLop/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* **regex** contém a expressão regular para coincidir com caracteres consecutivos repetidos.

View File

@ -24,7 +24,6 @@ function multiplesOf3and5(number) {
}
```
* [Executar código](https://repl.it/@ezioda004/Project-Euler-Problem-1-Multiples-of-3-and-5)
### Referência:

View File

@ -56,7 +56,6 @@ function fiboEvenSum(n) {
}
```
* [Executar código](https://repl.it/@ezioda004/Project-Euler-Problem-2-Even-Fibonacci-Numbers)
### Referências:

View File

@ -26,7 +26,6 @@ function largestPrimeFactor(number) {
}
```
* [Executar código](https://repl.it/@ezioda004/Problem-3-Largest-prime-factor)
### Recursos:

View File

@ -50,7 +50,6 @@ function largestPalindromeProduct(n) {
}
```
* [Executar código](https://repl.it/@ezioda004/Problem-4-Largest-palindrome-product)
### Referências:

View File

@ -37,7 +37,6 @@ localeTitle: Menor múltiplo
}
```
* [Executar código](https://repl.it/@ezioda004/Problem-5-Smallest-multiple)
### Referências:

View File

@ -29,7 +29,6 @@ function sumSquareDifference(n) {
}
```
* [Executar código](https://repl.it/@ezioda004/Problem-6-Sum-square-difference)
### Referências:

View File

@ -49,7 +49,6 @@ function nthPrime(n) {
}
```
\- [Executar código](https://repl.it/@ezioda004/Project-Euler-Problem-7-10001st-prime)
### Referências:

View File

@ -49,8 +49,7 @@ Este programa é muito simples, o truque é entender o que é um primitivo boole
booWho(null);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnK/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
# Explicação do código:
Usa o operador `typeof` para verificar se a variável é booleana. Se for, ele retornará `true` . Caso contrário, se for qualquer outro tipo, retornará `false` .

View File

@ -72,8 +72,7 @@ Finalmente, precisamos de um método para fazer a divisão real e podemos usar `
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/24)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Em primeiro lugar, criamos dois arrays vazios chamados `temp` e `result` , que eventualmente retornaremos.
@ -101,8 +100,7 @@ Finalmente, precisamos de um método para fazer a divisão real e podemos usar `
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/Cj9x/3)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, criamos um array vazio `arr2` onde armazenaremos nossos 'pedaços'.
@ -134,8 +132,7 @@ Finalmente, precisamos de um método para fazer a divisão real e podemos usar `
chunkArrayInGroups(["a", "b", "c", "d"], 2);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/26)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Em primeiro lugar, criamos duas variáveis. `newArr` é um array vazio ao qual iremos empurrar. Nós também temos a variável `i` definida como zero, para uso em nosso loop while.
@ -169,8 +166,7 @@ Finalmente, precisamos de um método para fazer a divisão real e podemos usar `
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/579)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Em primeiro lugar, criamos uma variável. `newArr` é um array vazio ao qual iremos empurrar.
@ -198,8 +194,7 @@ Finalmente, precisamos de um método para fazer a divisão real e podemos usar `
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/579)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Matriz menor que o tamanho é retornada aninhada.

View File

@ -19,7 +19,6 @@ function confirmEnding(str, target) {
confirmEnding("He has to give me a new name", "name");
```
#### 🚀 [Run Code](https://repl.it/repls/SardonicRoundAfkgaming)
# Explicação do código:

View File

@ -93,8 +93,7 @@ function factorialize(num) {
factorialize(5);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/1)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
Observe na primeira linha que temos a condição terminal, isto é, uma condição para verificar o final da recursão. Se `num == 0` , então retornamos 1, ou seja, finalizando efetivamente a recursão e informando a pilha para propagar esse valor para os níveis superiores. Se não tivermos essa condição, a recursão continuará até que o espaço da pilha seja consumido, resultando em um [estouro de pilha](https://en.wikipedia.org/wiki/Stack_overflow) .

View File

@ -45,8 +45,7 @@ function bouncer(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/32)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
O `Array.prototype.filter` método espera uma função que retorna um `Boolean` valor que recebe um único argumento e retorna `true` para [truthy](http://forum.freecodecamp.com/t/javascript-truthy-value/15975) valor ou `false` para [Falsas](https://guide.freecodecamp.org/javascript/falsy-values/) valor. Por isso passamos a função `Boolean` incorporada.

View File

@ -52,8 +52,7 @@ function findLongestWordLength(str) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/5)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Pegue a corda e converta-a em uma matriz de palavras. Declare uma variável para acompanhar o comprimento máximo e o loop de 0 até o comprimento da matriz de palavras.
@ -76,8 +75,7 @@ function findLongestWordLength(s) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/6)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Para mais informações sobre `reduce` [clique aqui.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce)
@ -122,8 +120,7 @@ function findLongestWordLength(str) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/7)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
A primeira linha divide a string em palavras individuais. Então nós verificamos se `str` tem apenas 1 elemento à esquerda, então esse é o elemento mais longo e nós o retornamos. Se o comprimento do primeiro elemento for maior que o segundo (ou igual) do segundo elemento, nós removemos o segundo elemento e chamamos recursivamente a função `findLongestWord` . No entanto, se o comprimento do segundo elemento for maior que o início do primeiro elemento, então chamamos a função após o primeiro elemento.

View File

@ -51,8 +51,7 @@ function mutation(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/30)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Primeiro fazemos as duas strings no array minúsculo. `test` irá realizar o que estamos procurando no `target` .
@ -79,8 +78,7 @@ function mutation(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/31)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Pegue a segunda corda, em minúsculas e transforme-a em uma matriz; em seguida, certifique-se de que _cada_ uma de suas _letras faça_ parte da primeira seqüência de caracteres em minúscula.

View File

@ -50,8 +50,7 @@ function repeatStringNumTimes(str, num) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/19)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma variável de string vazia para armazenar a palavra repetida.
@ -76,8 +75,7 @@ function repeatStringNumTimes(str, num) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/21)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Esta solução usa recursão.
@ -98,8 +96,7 @@ function repeatStringNumTimes(str, num) {
repeatStringNumTimes("abc", 3);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/85)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Essa solução usa uma abordagem declarativa.

View File

@ -53,8 +53,7 @@ function largestOfFour(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/734)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma variável para armazenar os _resultados_ como uma matriz.
@ -82,8 +81,7 @@ function largestOfFour(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/733)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* `Array.prototype.map()` todos os itens dentro da matriz principal para uma nova matriz usando `Array.prototype.map()` e retornamos essa matriz como o resultado final
@ -106,8 +104,7 @@ function largestOfFour(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/17)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
TL; DR: Nós construímos uma função de retorno de chamada especial (usando o `Function.bind` método), que funciona como `Math.max` mas também tem `Function.prototype.apply` capacidade de tomar matrizes como seus argumentos ![:smiley:](https://forum.freecodecamp.com/images/emoji/emoji_one/smiley.png?v=3 ":risonho:")

View File

@ -45,8 +45,7 @@ function reverseString(str) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Nosso objetivo é pegar a entrada, `str` e retorná-la ao contrário. Nosso primeiro passo é dividir a string por caracteres usando `split('')` . Observe que não deixamos nada entre as aspas simples, isso diz à função para dividir a string por cada caractere.

View File

@ -52,8 +52,7 @@ function frankenSplice(arr1, arr2, n) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Nosso objetivo é pegar todos os elementos de `arr1` e inseri-los em `arr2` começando com a posição de índice `n` . Ao mesmo tempo, devemos assegurar que nem `arr` ou `arr2` foram transformados.

View File

@ -58,8 +58,7 @@ String.prototype.replaceAt = function(index, character) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/8)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Estamos modificando a função `replaceAt` usando o protótipo para facilitar o uso do programa.
@ -86,8 +85,7 @@ function titleCase(str) {
titleCase("I'm a little tea pot");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/9)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Estamos fazendo a string inteira em minúscula e depois convertendo-a em array. Então estamos usando a função map para substituir o caractere minúsculo por maiúsculo. Finalmente, estamos retornando a string usando o método `join` .
@ -103,8 +101,7 @@ function titleCase(str) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/14)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
A solução funciona primeiro diminuindo todos os caracteres da string e, em seguida, apenas o primeiro caractere de cada palavra.

View File

@ -51,8 +51,7 @@ function truncateString(str, num) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/55)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, começamos com uma simples declaração `if` para determinar um dos três resultados…
@ -71,8 +70,7 @@ function truncateString(str, num) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/54)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, precisamos de uma instrução if para testar se o comprimento da string completa passou como o primeiro argumento já se encaixa dentro do limite de tamanho passado como o segundo argumento. Se assim for, podemos apenas retornar a string que foi passada.

View File

@ -52,8 +52,7 @@ function getIndexToIns(arr, num) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/36)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Primeiro, classifico a matriz usando `.sort(callbackFuntion)` para classificá-la da mais baixa para a mais alta, da esquerda para a direita.
@ -77,8 +76,7 @@ function getIndexToIns(arr, num) {
getIndexToIns([40, 60], 50);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/2547)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Eu não classifico a matriz de entrada arr
@ -106,8 +104,7 @@ function getIndexToIns(arr, num) {
getIndexToIns([40, 60], 50);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/4135)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Classifique o array existente.
@ -125,8 +122,7 @@ function getIndexToIns(arr, num) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/EB10/1)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Primeiro, adicionamos o número `num` ao array usando `push()` que o adiciona como o último elemento do array.
@ -154,8 +150,7 @@ function getIndexToIns(arr, num) {
getIndexToIns([40, 60], 500);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/63)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Primeiro, classifique a matriz em ordem crescente, isso é feito atualmente usando funções de matriz para pegada mínima.
@ -181,8 +176,7 @@ function getIndexToIns(arr, num) {
getIndexToIns([1,3,4],2);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/IUJE/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Usamos o método de encadeamento para invocar um método após o outro para resolver o problema em uma única linha. Primeiro nós mesclamos `arr` e `num` invocando o método arr.concat (num)

View File

@ -52,8 +52,6 @@ function testSize(num) {
}
```
· Executar código em [repl.it](https://repl.it/@AdrianSkar/Basic-JS-Chaining-ifelse-statements)
### Explicação de código
A função primeiro verifica a condição `if` `(num < 5)` . Se for avaliado como `true` , retorna a instrução entre as chaves ("Tiny"). Se isso não acontecer, ele verifica a próxima condição até a última instrução `else` .

View File

@ -31,8 +31,6 @@ function testEqual(val) {
testEqual(10);
```
· [Executar código em repl.it](https://repl.it/@AdrianSkar/Basic-JS-Equality-operator)
### Explicação de código
A função primeiro avalia `if` a condição `(val == 12)` avaliada como `true` . Em caso afirmativo, retorna a instrução entre as chaves ("Equal"). Caso contrário, retorna a próxima instrução de `return` fora deles ("Não é igual").

View File

@ -42,8 +42,6 @@ function testLogicalAnd(val) {
testLogicalAnd(10);
```
· [Executar código em repl.it](https://repl.it/@AdrianSkar/Basic-JS-Comparison-with-the-and-operator)
### Explicação de código
A função primeiro avalia `if` a condição `val <= 50` avaliada como `true` `val` conversão para um número se necessário, então faz o mesmo com `val >=25` por causa do operador lógico AND ( `&&` ); se ambos retornarem true, a instrução `return "Yes"` será executada.

View File

@ -120,7 +120,6 @@ function cc(card) {
}
```
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Basic-JS-Counting-cards)
### Explicação de código

View File

@ -112,7 +112,6 @@ var names = ["Hole-in-one!", "Eagle", "Birdie", "Par", "Bogey", "Double Bogey",
golfScore(5, 4);
```
· Corra no [repl.it](https://repl.it/@AdrianSkar/Basic-JS-Golf-code)
\## Explicação do código Como já temos uma matriz definida nos `names` das variáveis, podemos aproveitá-la e usá-la para nossas instruções de retorno usando índices (por exemplo: `names[0] is the first one` ). Dessa forma, se você precisar alterar um resultado específico, não precisaria procurá-lo dentro da função, seria no início, na sua matriz.

View File

@ -56,7 +56,7 @@ function testElseIf(val) {
testElseIf(7);
```
: rocket: [código de execução](https://repl.it/@RyanPisuena/GoldenWorriedRuntime) ## Explicação do código A estrutura de um **else-se o fluxo de lógica** é uma inicial `if` declaração, mais um `if-else` declarações, e uma final, `else` declaração.
## Explicação do código A estrutura de um **else-se o fluxo de lógica** é uma inicial `if` declaração, mais um `if-else` declarações, e uma final, `else` declaração.
### Recursos

View File

@ -47,7 +47,6 @@ function testElse(val) {
testElse(4);
```
· [Executar código em repl.it](https://repl.it/@AdrianSkar/Introducing-else-statements)
### Explicação de código

View File

@ -85,7 +85,6 @@ function sequentialSizes(val) {
sequentialSizes(1);
```
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Basic-JS-Multiple-opts-in-switch)
### Explicação de código

View File

@ -72,8 +72,7 @@ function updateRecords(id, prop, value) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/C2AZ/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, verifica se **prop** é igual a **tracks** E se o **valor** não é uma string em branco. Se ambos os testes forem aprovados, o **valor** será inserido na matriz de **faixas** .

View File

@ -46,8 +46,6 @@ function isLess(a, b) {
isLess(10, 15);
```
Execute o código em [repl.it.](https://repl.it/@AdrianSkar/Basic-Js-Returning-boolean-from-function)
### Recursos
* ["Operador menor ou igual a (<=)" - _Referência do MDN para JavaScript_](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Less_than_or_equal_operator_(%3C))

View File

@ -116,7 +116,6 @@ function caseInSwitch(val) {
caseInSwitch(1);
```
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Basic-JS-Switch-statements)
### Explicação de código

View File

@ -66,7 +66,6 @@ function phoneticLookup(val) {
javascript resultado = pesquisa \[val\]; \`\` \`
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Using-objects-for-lookups)
### Recursos

View File

@ -52,7 +52,6 @@ const increment = (function() {
console.log(increment(5)); // returns NaN
```
: rocket: [Run Code](https://repl.it/@RyanPisuena/PleasingFumblingThings)
## Explicação do código

View File

@ -95,8 +95,7 @@ No caso em que apenas um argumento foi passado, não se preocupe sobre como soli
addTogether(2,3);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnz/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, crio uma função com o único propósito de verificar se um número é realmente um número e retorna indefinido, se não for. Ele usa **typeof** para verificar.
@ -154,8 +153,7 @@ No caso em que apenas um argumento foi passado, não se preocupe sobre como soli
addTogether(2,3);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLoA/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro armazene os argumentos em uma matriz, criando uma matriz usando o método construtor.
@ -189,8 +187,7 @@ No caso em que apenas um argumento foi passado, não se preocupe sobre como soli
addTogether(2,3);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLoB/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro eu percorrer os argumentos e verificar argumentos que não são um número e retornar indefinido

View File

@ -61,8 +61,7 @@ Certifique-se de que, cada vez que transcodificar um caractere de binário para
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnm/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
# Explicação do código:
* Separe a string em uma matriz de strings separadas por espaço em branco.
@ -114,8 +113,7 @@ Certifique-se de que, cada vez que transcodificar um caractere de binário para
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLno/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
# Explicação do código
* Para cada uma dessas cadeias binárias, verifique as que estão e ignore os zeros.
@ -141,8 +139,7 @@ Certifique-se de que, cada vez que transcodificar um caractere de binário para
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnp/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
# Explicação do código
* Primeiro usamos o `split()` para poder trabalhar em cada caractere como um elemento Array

View File

@ -82,8 +82,7 @@ Explique a solução aqui e adicione links relevantes
* [arr.join ()](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/join)
* [mudar a indicação](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/switch)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnP/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## ![:sunflower:](https://forum.freecodecamp.com/images/emoji/emoji_one/sunflower.png?v=3 ":girassol:") Solução de Código Intermediário:
```
function convertHTML(str) {
@ -96,8 +95,7 @@ function convertHTML(str) {
convertHTML("Dolce & Gabbana");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnQ/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Explique a solução aqui e adicione links relevantes
@ -127,8 +125,7 @@ Explique a solução aqui e adicione links relevantes
convertHTML("Dolce & Gabbana");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnR/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie um objeto para usar a funcionalidade de pesquisa para encontrar facilmente os caracteres.

View File

@ -66,8 +66,7 @@ A melhor maneira de executar a função de retorno de chamada é verificar se o
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLme/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Leia os comentários no código.
@ -90,8 +89,7 @@ Leia os comentários no código.
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CNYb/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Explique a solução aqui e adicione links relevantes
@ -115,8 +113,7 @@ function diffArray(arr1, arr2) {
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CNYU/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Explique a solução aqui e adicione links relevantes

View File

@ -85,8 +85,7 @@ Esse problema não envolve reorganizar a entrada em combinações ou permutaçõ
pairElement("GCG");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmz/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* O programa é muito simples, a melhor solução que tenho é usar um switch para capturar todos os quatro elementos possíveis. Usando instruções if levaria muito código. Você também pode usar expressões regulares.
@ -118,8 +117,7 @@ Esse problema não envolve reorganizar a entrada em combinações ou permutaçõ
pairElement("GCG");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/repls/ThoroughSphericalComputeranimation)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## Explicação do código:
* Primeiro defina um objeto com todas as possibilidades de pares, isso nos permite encontrar facilmente por chave ou valor.

View File

@ -59,8 +59,7 @@ function dropElements(arr, func) {
dropElements([1, 2, 3, 4], function(n) {return n >= 3;})
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLna/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie um loop for para verificar cada elemento.
@ -82,8 +81,7 @@ function dropElements(arr, func) {
dropElements([1, 2, 3, 4], function(n) {return n >= 3;});
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnc/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Use a função ES6 `findIndex()` para encontrar o índice do elemento que passa a condição
@ -108,8 +106,7 @@ function dropElements(arr, func) {
dropElements([1, 2, 3, 4], function(n) {return n >= 3;});
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnf/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código
* Use um loop while com `Array.prototype.shift()` para continuar verificando e `Array.prototype.shift()` o primeiro elemento da matriz até que a função retorne true. Ele também garante que o array não esteja vazio primeiro para evitar loops infinitos.

View File

@ -61,8 +61,7 @@ function truthCheck(collection, pre) {
truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnw/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, crio um contador para verificar quantos casos são realmente verdadeiros.
@ -88,8 +87,7 @@ function truthCheck(collection, pre) {
truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLny/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Usa o método nativo "every" para testar se todos os elementos da matriz passam no teste.
@ -110,8 +108,7 @@ function truthCheck(collection, pre) {
truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/E2u6/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Para _cada_ objeto na matriz de `collection` , verifique a exatidão da propriedade do objeto passada no parâmetro `pre`

View File

@ -90,8 +90,7 @@ var Person = function(firstAndLast) {
bob.getFullName();
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLov/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma variável que faça uma cópia do nome completo que foi passado como um parâmetro.

View File

@ -70,8 +70,7 @@ function orbitalPeriod(arr) {
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLow/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* **GM** e **earthRadius** são ambos dados para nós.
@ -112,8 +111,7 @@ function orbitalPeriod(arr) {
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLoy/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* **GM** e **earthRadius** são ambos dados para nós.
@ -143,8 +141,7 @@ function orbitalPeriod(arr) {
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLoz/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* **GM** e **earthRadius** são ambos dados para nós.

View File

@ -61,8 +61,7 @@ function fearNotLetter(str) {
fearNotLetter("abce");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnD/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Esta solução faz uso de um loop `for` .
@ -99,8 +98,7 @@ function fearNotLetter(str) {
fearNotLetter("abce");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnE/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, definimos variáveis para armazenar o código do caractere para a primeira letra da string e para armazenar as letras que faltam.
@ -148,8 +146,7 @@ function fearNotLetter(str) {
fearNotLetter("abce");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnG/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Uma nova string **allChars** é criada.

View File

@ -68,8 +68,7 @@ function translatePigLatin(str) {
translatePigLatin("consonant");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmt/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Faça uma corda vazia para segurar sua palavra latina.
@ -102,8 +101,7 @@ function translatePigLatin(str) {
translatePigLatin("consonant");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmw/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Esta é uma abordagem declarativa e recursiva para este problema.
@ -148,8 +146,7 @@ function translatePigLatin(str) {
translatePigLatin("consonant");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmv/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* `isConsonant()` é usado para verificar se um caractere é uma consoante.

View File

@ -57,8 +57,7 @@ function myReplace(str, before, after) {
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmo/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Use `indexOf()` para encontrar o local de **antes** em string.
@ -93,8 +92,7 @@ function myReplace(str, before, after) {
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmp/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Nesta solução, a expressão regular `[AZ]` é usada para verificar se o caractere é maiúsculo.
@ -139,8 +137,7 @@ function myReplace(str, before, after) {
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmq/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Tanto o **antes** quanto o **depois** são passados como argumentos para `applyCasing()` .
@ -199,8 +196,7 @@ function myReplace(str, before, after) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/@kr3at0/SearchAndReplace)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## ![:rotating_light:](https://forum.freecodecamp.com/images/emoji/emoji_one/rotating_light.png?v=3 ": rotating_light:") Alternativa de Solução de Código Avançado 2:
```javascript

View File

@ -53,8 +53,7 @@ function destroyer(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/95)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
1. Crie uma matriz de `arguments` usando `Array.prototype.slice.call()` e armazene-a na variável `args` . Nós vamos usar isso para verificar contra `arr` .
@ -85,8 +84,7 @@ function destroyer(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/Ck2m/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
1. Declare uma variável denominada `args` e defina-a como um novo objeto `Array` `from()` os `arguments` passados para a função. Na mesma linha ou na linha seguinte, use o método `slice()` em `args` a partir do segundo índice, 1. Isso separa os argumentos usados para filtragem em sua própria matriz de `args` .

View File

@ -82,8 +82,7 @@ function smallestCommons(arr) {
smallestCommons([1,5]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLn2/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Por causa da possibilidade do menor denominador comum estar entre os dois maiores números, faz sentido checar os primeiros, então ordene o array.
@ -139,8 +138,7 @@ function smallestCommons(arr) {
smallestCommons([1,5]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLn4/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* A primeira solução básica requer mais de 2.000 loops para calcular o caso de teste dos `smallestCommons([1,13])` e mais de 4 milhões de loops para calcular os `smallestCommons([1,25])` . Esta solução avalia os `smallestCommons([1,13])` em cerca de 20 loops e os `smallestCommons([1,25])` em 40, usando um algoritmo mais eficiente.
@ -199,8 +197,7 @@ function smallestCommons(arr) {
smallestCommons([1,5]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/MR9P/latest)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Extraia o mínimo e o máximo de **arr** .

View File

@ -65,8 +65,7 @@ function uniteUnique(arr1, arr2, arr3) {
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnM/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie array **final finalResult** para armazenar o resultado final.
@ -122,8 +121,7 @@ function uniteUnique(arr1, arr2, arr3) {
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnO/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* objeto **argumentos** é convertido em um array usando `slice()` .
@ -155,8 +153,7 @@ function uniteUnique() {
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnN/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* O número de argumentos pode mudar dinamicamente, portanto, não precisamos nos preocupar em fornecer nossa função `uniteUnique()` com argumentos.
@ -185,8 +182,7 @@ function uniteUnique() {
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CcWk/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, usamos `concat()` com uma matriz vazia `<a href='http://exploringjs.com/es6/ch_maps-sets.html#_set' target='_blank' rel='nofollow'>]` como ponto de partida e o operador spread `...` para criar um array fora do objeto Arguments e achatá-lo ao mesmo tempo

View File

@ -56,8 +56,7 @@ function spinalCase(str) {
spinalCase('This Is Spinal Tap');
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnS/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* **regex** contém a expressão regular `/\s+|_+/g` , que selecionará todos os espaços em branco e sublinhados.
@ -77,8 +76,7 @@ function spinalCase(str) {
spinalCase('This Is Spinal Tap');
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnT/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Semelhante à primeira solução, o primeiro `replace()` coloca um espaço antes de qualquer caractere maiúsculo encontrado na string **str, de** modo que os espaços possam ser substituídos por traços posteriores.
@ -99,8 +97,7 @@ function spinalCase(str) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/EUZV)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Divida a string em uma das seguintes condições ( _convertida em uma matriz_ )

View File

@ -62,8 +62,7 @@ function steamrollArray(arr) {
steamrollArray([1, [2], [3, [[4]]]]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnh/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma nova variável para manter matrizes achatadas.
@ -87,8 +86,7 @@ function steamrollArray(arr) {
flattenArray([1, [2], [3, [[4]]]]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLni/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Use o operador spread para concatenar cada elemento do `arr` com um array vazio
@ -121,8 +119,7 @@ function steamrollArray(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CpDy/4)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro, transformamos a matriz em uma string, que nos dará uma string de números separada por uma vírgula, dupla vírgula se houvesse uma matriz vazia e um texto de objeto literal, se houvesse um objeto, que poderíamos corrigi-lo posteriormente em nossa declaração if .

View File

@ -47,8 +47,7 @@ function sumAll(arr) {
sumAll([1, 4]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLm6/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiro crie uma variável para armazenar o número máximo entre dois.
@ -79,8 +78,7 @@ function sumAll(arr) {
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLm7/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Primeiramente, criamos uma variável chamada `sortedArr` que a classifica do menor para o maior valor.
@ -109,8 +107,7 @@ function sumAll(arr) {
sumAll([1, 4]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLm8/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Criando uma soma variável para armazenar a soma dos elementos.

View File

@ -58,8 +58,7 @@ function sumFibs(num) {
sumFibs(4);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnV/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma variável para manter o registro dos números atual e anterior junto com o resultado que será retornado.
@ -100,8 +99,7 @@ function sumFibs(num) {
sumFibs(4);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/repls/ImpassionedFineConnection)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma matriz de números de fibonacci até **num** .

View File

@ -73,8 +73,7 @@ function sumPrimes(num) {
sumPrimes(10);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLnZ/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma função que gere os números de 1 a **num** e verifique se eles são primos ao longo do caminho.
@ -122,8 +121,7 @@ function sumPrimes(num) {
sumPrimes(10);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLn0/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* A função `isPrime` verifica se um determinado número é primo ou não.
@ -157,8 +155,7 @@ function sumPrimes(num) {
sumPrimes(977);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/DoOo/3)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* **Etapa 1:** use `Array.from()` para gerar uma sequência de números até e incluindo `num` . Combine com `.slice()` para cortar primeiro dois índices `[0, 1]` pois todos os números primos devem ser maiores que 1.

View File

@ -61,8 +61,7 @@ function whatIsInAName(collection, source) {
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmh/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Nós filtramos através do array usando `.filter()` .
@ -95,8 +94,7 @@ function whatIsInAName(collection, source) {
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmi/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Nós filtramos a coleção usando `.filter()` .
@ -133,8 +131,7 @@ function whatIsInAName(collection, source) {
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmj/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Começamos filtrando a `collection` usando `Array.filter()` .

View File

@ -63,8 +63,7 @@ Deixe qualquer coisa que não esteja entre o AZ como está.
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/38)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Uma variável de string `nstr` é declarada e inicializada para armazenar a string decodificada.
@ -152,8 +151,7 @@ ALPHA KEY BASE ROTATED ROT13
* [Regex](https://forum.freecodecamp.com/t/regular-expressions-resources/15931)
* [Regex.test](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/39)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
## ![:rotating_light:](https://forum.freecodecamp.com/images/emoji/emoji_one/rotating_light.png?v=3 ": rotating_light:") Solução avançada de código:
```
function rot13(str) { // LBH QVQ VG!

View File

@ -112,8 +112,7 @@ localeTitle: Caixa registradora
checkCashRegister(19.50, 20.00, [["PENNY", 1.01], ["NICKEL", 2.05], ["DIME", 3.10], ["QUARTER", 4.25], ["ONE", 90.00], ["FIVE", 55.00], ["TEN", 20.00], ["TWENTY", 60.00], ["ONE HUNDRED", 100.00]]);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/@scissorsneedfoo/cash-register-example)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Primeiro, crie uma matriz de objetos com o valor de cada denominação de conta ou moeda, juntamente com um objeto de saída com o status e as chaves de alteração. Em seguida, transforme a matriz CID em um objeto de gaveta. Em seguida, lide com as condições de mudança exata e fundos insuficientes. Faça o loop através da matriz `denom` e atualize a alteração e os valores enquanto ainda houver dinheiro de cada tipo na gaveta e enquanto a denominação for maior que a alteração restante. Adicione esta denominação ao acumulador de `change_arr` se algum desse tipo foi usado. Após o loop, `change_arr` é uma matriz 2D da mudança devida, classificada da mais alta para a mais baixa denominação. Se não houver elementos em `change_arr` ou você ainda deve alterar, retorne o objeto de saída com um status `INSUFFICIENT_FUNDS` . Finalmente, você pode dar a alteração correta. Retorna o objeto de saída com um status de `OPEN` e `change_arr` como o valor da mudança.

View File

@ -52,8 +52,7 @@ Os `Array.prototype.split` e `Array.prototype.join` métodos podem ser de uso aq
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/2)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Começamos usando expressões regulares para substituir qualquer espaço em branco ou caracteres não alfanuméricos por nada (ou `null` ), o que essencialmente os remove da string.
@ -85,8 +84,7 @@ Os `Array.prototype.split` e `Array.prototype.join` métodos podem ser de uso aq
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/3)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Começamos usando os mesmos métodos de substituir os caracteres que não queremos na string usando expressões regulares do `RegEx` , e então fazer a nossa string em minúsculo.
@ -134,8 +132,7 @@ Os `Array.prototype.split` e `Array.prototype.join` métodos podem ser de uso aq
}
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLjU/4)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Foi-me dado este problema em uma entrevista (spoiler: eu não fui contratado ![:frowning:](https://forum.freecodecamp.com/images/emoji/emoji_one/frowning.png?v=3 ": franzindo a testa:") Rapidamente cheguei à solução básica, e o entrevistador me disse para melhorar. O algoritmo demoraria muito se ele passasse a Bíblia como a string. Ele queria que fosse instantâneo.

View File

@ -62,8 +62,7 @@ var convertToRoman = function(num) {
convertToRoman(36);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLmf/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Começamos criando dois arrays com conversão padrão com índices correspondentes. Estes são chamados `decimalValue` e `romanNumeral` . Também criamos uma variável de string vazia, `romanized` , que abrigará o número romano final.
@ -128,8 +127,7 @@ function convertToRoman(num) {
convertToRoman(97);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/C1YV)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Crie uma matriz de numerais `romans` ( `romans` ).
@ -185,8 +183,7 @@ function convertToRoman(num) {
convertToRoman(36);
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/C1YV)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* Use uma matriz ( `romans` ) para criar uma matriz contendo o numeral romano para uma determinada potência de 10 e, se disponível, o numeral romano para essa potência de 10 vezes 5.

View File

@ -47,8 +47,7 @@ function telephoneCheck(str) {
telephoneCheck("555-555-5555");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLo9/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
* `^` indica o começo da corda.
@ -75,8 +74,7 @@ function telephoneCheck(str) {
telephoneCheck("555-555-5555");
```
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:") [Executar código](https://repl.it/CLoa/0)
![:rocket:](https://forum.freecodecamp.com/images/emoji/emoji_one/rocket.png?v=3 ":foguete:")
### Explicação do código:
Este é um exemplo de uma solução muito abrangente e robusta para validar o lado cliente dos números de telefone dos EUA. Nesses casos, pode ser muito melhor e mais fácil implementar esse número de [libras da](https://github.com/googlei18n/libphonenumber) biblioteca.