fix: remove repl.it links portuguese challenge articles (#36208)
This commit is contained in:
committed by
Parth Parth
parent
ee952dee42
commit
fc10e95a46
@ -86,8 +86,7 @@ A = {1, 2, 3}
|
|||||||
|
|
||||||
```](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce)
|
```](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce)
|
||||||
|
|
||||||
[](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce) [Executar código](https://repl.it/C4II/0)
|
[](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce)
|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* `push()` é usado para dividir o objeto _arguments_ em um array, _args_ .
|
* `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]);
|
sym([1, 2, 3], [5, 2, 1, 4]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLoc/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* O método `slice()` é usado para dividir o objeto _arguments_ em um array, _args_ .
|
* 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]);
|
sym([1, 2, 3], [5, 2, 1, 4]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/@ashenm/Symmetric-Difference)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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.
|
||||||
|
@ -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; }`
|
`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:
|
### Referências:
|
||||||
|
|
||||||
|
@ -32,7 +32,6 @@ function insertionSort(array) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Insertion-Sort)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -48,7 +48,6 @@ localeTitle: Implementar o Merge Sort
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Merge-Sort)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -48,7 +48,6 @@ localeTitle: Implementar classificação rápida
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Quick-Sort)
|
|
||||||
|
|
||||||
### Referência:
|
### Referência:
|
||||||
|
|
||||||
|
@ -106,8 +106,7 @@ Retorne o inventário completo em ordem alfabética.
|
|||||||
updateInventory(curInv, newInv);
|
updateInventory(curInv, newInv);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLok/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* O **índice** variável armazena a localização (índice) de um produto.
|
* 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);
|
updateInventory(curInv, newInv);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLol/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* O **índice** variável armazena a localização (índice) de um produto.
|
* 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);
|
updateInventory(curInv, newInv);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/MQvv/latest)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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.
|
||||||
|
@ -145,8 +145,7 @@ function permAlone(str) {
|
|||||||
permAlone('aab');
|
permAlone('aab');
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLop/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* **regex** contém a expressão regular para coincidir com caracteres consecutivos repetidos.
|
* **regex** contém a expressão regular para coincidir com caracteres consecutivos repetidos.
|
||||||
|
@ -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:
|
### Referência:
|
||||||
|
|
||||||
|
@ -56,7 +56,6 @@ function fiboEvenSum(n) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Project-Euler-Problem-2-Even-Fibonacci-Numbers)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ function largestPrimeFactor(number) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Problem-3-Largest-prime-factor)
|
|
||||||
|
|
||||||
### Recursos:
|
### Recursos:
|
||||||
|
|
||||||
|
@ -50,7 +50,6 @@ function largestPalindromeProduct(n) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Problem-4-Largest-palindrome-product)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -37,7 +37,6 @@ localeTitle: Menor múltiplo
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Problem-5-Smallest-multiple)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -29,7 +29,6 @@ function sumSquareDifference(n) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
* [Executar código](https://repl.it/@ezioda004/Problem-6-Sum-square-difference)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -49,7 +49,6 @@ function nthPrime(n) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
\- [Executar código](https://repl.it/@ezioda004/Project-Euler-Problem-7-10001st-prime)
|
|
||||||
|
|
||||||
### Referências:
|
### Referências:
|
||||||
|
|
||||||
|
@ -49,8 +49,7 @@ Este programa é muito simples, o truque é entender o que é um primitivo boole
|
|||||||
booWho(null);
|
booWho(null);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnK/0)
|

|
||||||
|
|
||||||
# Explicação do código:
|
# 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` .
|
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` .
|
||||||
|
@ -72,8 +72,7 @@ Finalmente, precisamos de um método para fazer a divisão real e podemos usar `
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/24)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Em primeiro lugar, criamos dois arrays vazios chamados `temp` e `result` , que eventualmente retornaremos.
|
* 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 `
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/Cj9x/3)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiro, criamos um array vazio `arr2` onde armazenaremos nossos 'pedaços'.
|
* 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);
|
chunkArrayInGroups(["a", "b", "c", "d"], 2);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/26)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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 `
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/579)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Em primeiro lugar, criamos uma variável. `newArr` é um array vazio ao qual iremos empurrar.
|
* 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 `
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/579)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Matriz menor que o tamanho é retornada aninhada.
|
* Matriz menor que o tamanho é retornada aninhada.
|
||||||
|
@ -19,7 +19,6 @@ function confirmEnding(str, target) {
|
|||||||
confirmEnding("He has to give me a new name", "name");
|
confirmEnding("He has to give me a new name", "name");
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 🚀 [Run Code](https://repl.it/repls/SardonicRoundAfkgaming)
|
|
||||||
|
|
||||||
# Explicação do código:
|
# Explicação do código:
|
||||||
|
|
||||||
|
@ -93,8 +93,7 @@ function factorialize(num) {
|
|||||||
factorialize(5);
|
factorialize(5);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/1)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## 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) .
|
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) .
|
||||||
|
@ -45,8 +45,7 @@ function bouncer(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/32)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
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.
|
||||||
|
@ -52,8 +52,7 @@ function findLongestWordLength(str) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/5)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/6)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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)
|
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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/7)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
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.
|
||||||
|
@ -51,8 +51,7 @@ function mutation(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/30)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
Primeiro fazemos as duas strings no array minúsculo. `test` irá realizar o que estamos procurando no `target` .
|
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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/31)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
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.
|
||||||
|
@ -50,8 +50,7 @@ function repeatStringNumTimes(str, num) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/19)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie uma variável de string vazia para armazenar a palavra repetida.
|
* Crie uma variável de string vazia para armazenar a palavra repetida.
|
||||||
@ -76,8 +75,7 @@ function repeatStringNumTimes(str, num) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/21)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Esta solução usa recursão.
|
* Esta solução usa recursão.
|
||||||
@ -98,8 +96,7 @@ function repeatStringNumTimes(str, num) {
|
|||||||
repeatStringNumTimes("abc", 3);
|
repeatStringNumTimes("abc", 3);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/85)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Essa solução usa uma abordagem declarativa.
|
* Essa solução usa uma abordagem declarativa.
|
||||||
|
@ -53,8 +53,7 @@ function largestOfFour(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/734)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie uma variável para armazenar os _resultados_ como uma matriz.
|
* Crie uma variável para armazenar os _resultados_ como uma matriz.
|
||||||
@ -82,8 +81,7 @@ function largestOfFour(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/733)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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
|
* `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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/17)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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 
|
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 
|
||||||
|
@ -45,8 +45,7 @@ function reverseString(str) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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.
|
||||||
|
@ -52,8 +52,7 @@ function frankenSplice(arr1, arr2, n) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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.
|
||||||
|
@ -58,8 +58,7 @@ String.prototype.replaceAt = function(index, character) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/8)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
Estamos modificando a função `replaceAt` usando o protótipo para facilitar o uso do programa.
|
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");
|
titleCase("I'm a little tea pot");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/9)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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` .
|
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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/14)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
A solução funciona primeiro diminuindo todos os caracteres da string e, em seguida, apenas o primeiro caractere de cada palavra.
|
||||||
|
@ -51,8 +51,7 @@ function truncateString(str, num) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/55)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiro, começamos com uma simples declaração `if` para determinar um dos três resultados…
|
* Primeiro, começamos com uma simples declaração `if` para determinar um dos três resultados…
|
||||||
@ -71,8 +70,7 @@ function truncateString(str, num) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/54)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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.
|
||||||
|
@ -52,8 +52,7 @@ function getIndexToIns(arr, num) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/36)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## 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.
|
* 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);
|
getIndexToIns([40, 60], 50);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/2547)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## Explicação do código:
|
||||||
|
|
||||||
* Eu não classifico a matriz de entrada arr
|
* Eu não classifico a matriz de entrada arr
|
||||||
@ -106,8 +104,7 @@ function getIndexToIns(arr, num) {
|
|||||||
getIndexToIns([40, 60], 50);
|
getIndexToIns([40, 60], 50);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/4135)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## Explicação do código:
|
||||||
|
|
||||||
* Classifique o array existente.
|
* Classifique o array existente.
|
||||||
@ -125,8 +122,7 @@ function getIndexToIns(arr, num) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/EB10/1)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## Explicação do código:
|
||||||
|
|
||||||
* Primeiro, adicionamos o número `num` ao array usando `push()` que o adiciona como o último elemento do array.
|
* 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);
|
getIndexToIns([40, 60], 500);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/63)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## Explicação do código:
|
||||||
|
|
||||||
* Primeiro, classifique a matriz em ordem crescente, isso é feito atualmente usando funções de matriz para pegada mínima.
|
* 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);
|
getIndexToIns([1,3,4],2);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/IUJE/0)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## 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)
|
* 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)
|
||||||
|
@ -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
|
### 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` .
|
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` .
|
||||||
|
@ -31,8 +31,6 @@ function testEqual(val) {
|
|||||||
testEqual(10);
|
testEqual(10);
|
||||||
```
|
```
|
||||||
|
|
||||||
· [Executar código em repl.it](https://repl.it/@AdrianSkar/Basic-JS-Equality-operator)
|
|
||||||
|
|
||||||
### Explicação de código
|
### 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").
|
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").
|
||||||
|
@ -42,8 +42,6 @@ function testLogicalAnd(val) {
|
|||||||
testLogicalAnd(10);
|
testLogicalAnd(10);
|
||||||
```
|
```
|
||||||
|
|
||||||
· [Executar código em repl.it](https://repl.it/@AdrianSkar/Basic-JS-Comparison-with-the-and-operator)
|
|
||||||
|
|
||||||
### Explicação de código
|
### 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.
|
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.
|
||||||
|
@ -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
|
### Explicação de código
|
||||||
|
|
||||||
|
@ -112,7 +112,6 @@ var names = ["Hole-in-one!", "Eagle", "Birdie", "Par", "Bogey", "Double Bogey",
|
|||||||
golfScore(5, 4);
|
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.
|
\## 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.
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ function testElseIf(val) {
|
|||||||
testElseIf(7);
|
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
|
### Recursos
|
||||||
|
|
||||||
|
@ -47,7 +47,6 @@ function testElse(val) {
|
|||||||
testElse(4);
|
testElse(4);
|
||||||
```
|
```
|
||||||
|
|
||||||
· [Executar código em repl.it](https://repl.it/@AdrianSkar/Introducing-else-statements)
|
|
||||||
|
|
||||||
### Explicação de código
|
### Explicação de código
|
||||||
|
|
||||||
|
@ -85,7 +85,6 @@ function sequentialSizes(val) {
|
|||||||
sequentialSizes(1);
|
sequentialSizes(1);
|
||||||
```
|
```
|
||||||
|
|
||||||
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Basic-JS-Multiple-opts-in-switch)
|
|
||||||
|
|
||||||
### Explicação de código
|
### Explicação de código
|
||||||
|
|
||||||
|
@ -72,8 +72,7 @@ function updateRecords(id, prop, value) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/C2AZ/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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** .
|
* 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** .
|
||||||
|
@ -46,8 +46,6 @@ function isLess(a, b) {
|
|||||||
isLess(10, 15);
|
isLess(10, 15);
|
||||||
```
|
```
|
||||||
|
|
||||||
Execute o código em [repl.it.](https://repl.it/@AdrianSkar/Basic-Js-Returning-boolean-from-function)
|
|
||||||
|
|
||||||
### Recursos
|
### 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))
|
* ["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))
|
@ -116,7 +116,6 @@ function caseInSwitch(val) {
|
|||||||
caseInSwitch(1);
|
caseInSwitch(1);
|
||||||
```
|
```
|
||||||
|
|
||||||
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Basic-JS-Switch-statements)
|
|
||||||
|
|
||||||
### Explicação de código
|
### Explicação de código
|
||||||
|
|
||||||
|
@ -66,7 +66,6 @@ function phoneticLookup(val) {
|
|||||||
|
|
||||||
javascript resultado = pesquisa \[val\]; \`\` \`
|
javascript resultado = pesquisa \[val\]; \`\` \`
|
||||||
|
|
||||||
· Executar código no [repl.it.](https://repl.it/@AdrianSkar/Using-objects-for-lookups)
|
|
||||||
|
|
||||||
### Recursos
|
### Recursos
|
||||||
|
|
||||||
|
@ -52,7 +52,6 @@ const increment = (function() {
|
|||||||
console.log(increment(5)); // returns NaN
|
console.log(increment(5)); // returns NaN
|
||||||
```
|
```
|
||||||
|
|
||||||
: rocket: [Run Code](https://repl.it/@RyanPisuena/PleasingFumblingThings)
|
|
||||||
|
|
||||||
## Explicação do código
|
## Explicação do código
|
||||||
|
|
||||||
|
@ -95,8 +95,7 @@ No caso em que apenas um argumento foi passado, não se preocupe sobre como soli
|
|||||||
addTogether(2,3);
|
addTogether(2,3);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnz/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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);
|
addTogether(2,3);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLoA/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiro armazene os argumentos em uma matriz, criando uma matriz usando o método construtor.
|
* 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);
|
addTogether(2,3);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLoB/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiro eu percorrer os argumentos e verificar argumentos que não são um número e retornar indefinido
|
* Primeiro eu percorrer os argumentos e verificar argumentos que não são um número e retornar indefinido
|
||||||
|
@ -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");
|
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnm/0)
|

|
||||||
|
|
||||||
# Explicação do código:
|
# Explicação do código:
|
||||||
|
|
||||||
* Separe a string em uma matriz de strings separadas por espaço em branco.
|
* 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");
|
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLno/0)
|

|
||||||
|
|
||||||
# Explicação do código
|
# Explicação do código
|
||||||
|
|
||||||
* Para cada uma dessas cadeias binárias, verifique as que estão e ignore os zeros.
|
* 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");
|
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnp/0)
|

|
||||||
|
|
||||||
# Explicação do código
|
# Explicação do código
|
||||||
|
|
||||||
* Primeiro usamos o `split()` para poder trabalhar em cada caractere como um elemento Array
|
* Primeiro usamos o `split()` para poder trabalhar em cada caractere como um elemento Array
|
||||||
|
@ -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)
|
* [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)
|
* [mudar a indicação](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/switch)
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnP/0)
|

|
||||||
|
|
||||||
##  Solução de Código Intermediário:
|
##  Solução de Código Intermediário:
|
||||||
```
|
```
|
||||||
function convertHTML(str) {
|
function convertHTML(str) {
|
||||||
@ -96,8 +95,7 @@ function convertHTML(str) {
|
|||||||
convertHTML("Dolce & Gabbana");
|
convertHTML("Dolce & Gabbana");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnQ/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
Explique a solução aqui e adicione links relevantes
|
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");
|
convertHTML("Dolce & Gabbana");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnR/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie um objeto para usar a funcionalidade de pesquisa para encontrar facilmente os caracteres.
|
* Crie um objeto para usar a funcionalidade de pesquisa para encontrar facilmente os caracteres.
|
||||||
|
@ -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]);
|
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLme/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
Leia os comentários no 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]);
|
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CNYb/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
Explique a solução aqui e adicione links relevantes
|
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]);
|
diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CNYU/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
Explique a solução aqui e adicione links relevantes
|
Explique a solução aqui e adicione links relevantes
|
||||||
|
@ -85,8 +85,7 @@ Esse problema não envolve reorganizar a entrada em combinações ou permutaçõ
|
|||||||
pairElement("GCG");
|
pairElement("GCG");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmz/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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");
|
pairElement("GCG");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/repls/ThoroughSphericalComputeranimation)
|

|
||||||
|
|
||||||
## Explicação do código:
|
## Explicação do código:
|
||||||
|
|
||||||
* Primeiro defina um objeto com todas as possibilidades de pares, isso nos permite encontrar facilmente por chave ou valor.
|
* Primeiro defina um objeto com todas as possibilidades de pares, isso nos permite encontrar facilmente por chave ou valor.
|
||||||
|
@ -59,8 +59,7 @@ function dropElements(arr, func) {
|
|||||||
dropElements([1, 2, 3, 4], function(n) {return n >= 3;})
|
dropElements([1, 2, 3, 4], function(n) {return n >= 3;})
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLna/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie um loop for para verificar cada elemento.
|
* 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;});
|
dropElements([1, 2, 3, 4], function(n) {return n >= 3;});
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnc/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Use a função ES6 `findIndex()` para encontrar o índice do elemento que passa a condição
|
* 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;});
|
dropElements([1, 2, 3, 4], function(n) {return n >= 3;});
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnf/0)
|

|
||||||
|
|
||||||
### Explicação do código
|
### 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.
|
* 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.
|
||||||
|
@ -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");
|
truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnw/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiro, crio um contador para verificar quantos casos são realmente verdadeiros.
|
* 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");
|
truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLny/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Usa o método nativo "every" para testar se todos os elementos da matriz passam no teste.
|
* 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");
|
truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/E2u6/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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`
|
* Para _cada_ objeto na matriz de `collection` , verifique a exatidão da propriedade do objeto passada no parâmetro `pre`
|
||||||
|
@ -90,8 +90,7 @@ var Person = function(firstAndLast) {
|
|||||||
bob.getFullName();
|
bob.getFullName();
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLov/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* Crie uma variável que faça uma cópia do nome completo que foi passado como um parâmetro.
|
||||||
|
@ -70,8 +70,7 @@ function orbitalPeriod(arr) {
|
|||||||
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
|
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLow/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* **GM** e **earthRadius** são ambos dados para nós.
|
* **GM** e **earthRadius** são ambos dados para nós.
|
||||||
@ -112,8 +111,7 @@ function orbitalPeriod(arr) {
|
|||||||
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
|
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLoy/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* **GM** e **earthRadius** são ambos dados para nós.
|
* **GM** e **earthRadius** são ambos dados para nós.
|
||||||
@ -143,8 +141,7 @@ function orbitalPeriod(arr) {
|
|||||||
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
|
orbitalPeriod([{name : "sputnik", avgAlt : 35873.5553}]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLoz/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* **GM** e **earthRadius** são ambos dados para nós.
|
* **GM** e **earthRadius** são ambos dados para nós.
|
||||||
|
@ -61,8 +61,7 @@ function fearNotLetter(str) {
|
|||||||
fearNotLetter("abce");
|
fearNotLetter("abce");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnD/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Esta solução faz uso de um loop `for` .
|
* Esta solução faz uso de um loop `for` .
|
||||||
@ -99,8 +98,7 @@ function fearNotLetter(str) {
|
|||||||
fearNotLetter("abce");
|
fearNotLetter("abce");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnE/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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");
|
fearNotLetter("abce");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnG/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Uma nova string **allChars** é criada.
|
* Uma nova string **allChars** é criada.
|
||||||
|
@ -68,8 +68,7 @@ function translatePigLatin(str) {
|
|||||||
translatePigLatin("consonant");
|
translatePigLatin("consonant");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmt/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Faça uma corda vazia para segurar sua palavra latina.
|
* Faça uma corda vazia para segurar sua palavra latina.
|
||||||
@ -102,8 +101,7 @@ function translatePigLatin(str) {
|
|||||||
translatePigLatin("consonant");
|
translatePigLatin("consonant");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmw/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Esta é uma abordagem declarativa e recursiva para este problema.
|
* Esta é uma abordagem declarativa e recursiva para este problema.
|
||||||
@ -148,8 +146,7 @@ function translatePigLatin(str) {
|
|||||||
translatePigLatin("consonant");
|
translatePigLatin("consonant");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmv/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* `isConsonant()` é usado para verificar se um caractere é uma consoante.
|
* `isConsonant()` é usado para verificar se um caractere é uma consoante.
|
||||||
|
@ -57,8 +57,7 @@ function myReplace(str, before, after) {
|
|||||||
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
|
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmo/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Use `indexOf()` para encontrar o local de **antes** em string.
|
* 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");
|
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmp/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Nesta solução, a expressão regular `[AZ]` é usada para verificar se o caractere é maiúsculo.
|
* 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");
|
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmq/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Tanto o **antes** quanto o **depois** são passados como argumentos para `applyCasing()` .
|
* Tanto o **antes** quanto o **depois** são passados como argumentos para `applyCasing()` .
|
||||||
@ -199,8 +196,7 @@ function myReplace(str, before, after) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/@kr3at0/SearchAndReplace)
|

|
||||||
|
|
||||||
##  Alternativa de Solução de Código Avançado 2:
|
##  Alternativa de Solução de Código Avançado 2:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
|
@ -53,8 +53,7 @@ function destroyer(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/95)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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` .
|
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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/Ck2m/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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` .
|
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` .
|
||||||
|
@ -82,8 +82,7 @@ function smallestCommons(arr) {
|
|||||||
smallestCommons([1,5]);
|
smallestCommons([1,5]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLn2/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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]);
|
smallestCommons([1,5]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLn4/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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]);
|
smallestCommons([1,5]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/MR9P/latest)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Extraia o mínimo e o máximo de **arr** .
|
* Extraia o mínimo e o máximo de **arr** .
|
||||||
|
@ -65,8 +65,7 @@ function uniteUnique(arr1, arr2, arr3) {
|
|||||||
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
|
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnM/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie array **final finalResult** para armazenar o resultado final.
|
* 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]);
|
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnO/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* objeto **argumentos** é convertido em um array usando `slice()` .
|
* objeto **argumentos** é convertido em um array usando `slice()` .
|
||||||
@ -155,8 +153,7 @@ function uniteUnique() {
|
|||||||
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
|
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnN/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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]);
|
uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CcWk/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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
|
* 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
|
||||||
|
@ -56,8 +56,7 @@ function spinalCase(str) {
|
|||||||
spinalCase('This Is Spinal Tap');
|
spinalCase('This Is Spinal Tap');
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnS/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* **regex** contém a expressão regular `/\s+|_+/g` , que selecionará todos os espaços em branco e sublinhados.
|
* **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');
|
spinalCase('This Is Spinal Tap');
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnT/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/EUZV)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Divida a string em uma das seguintes condições ( _convertida em uma matriz_ )
|
* Divida a string em uma das seguintes condições ( _convertida em uma matriz_ )
|
||||||
|
@ -62,8 +62,7 @@ function steamrollArray(arr) {
|
|||||||
steamrollArray([1, [2], [3, [[4]]]]);
|
steamrollArray([1, [2], [3, [[4]]]]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnh/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie uma nova variável para manter matrizes achatadas.
|
* Crie uma nova variável para manter matrizes achatadas.
|
||||||
@ -87,8 +86,7 @@ function steamrollArray(arr) {
|
|||||||
flattenArray([1, [2], [3, [[4]]]]);
|
flattenArray([1, [2], [3, [[4]]]]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLni/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Use o operador spread para concatenar cada elemento do `arr` com um array vazio
|
* Use o operador spread para concatenar cada elemento do `arr` com um array vazio
|
||||||
@ -121,8 +119,7 @@ function steamrollArray(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CpDy/4)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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 .
|
* 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 .
|
||||||
|
@ -47,8 +47,7 @@ function sumAll(arr) {
|
|||||||
sumAll([1, 4]);
|
sumAll([1, 4]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLm6/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiro crie uma variável para armazenar o número máximo entre dois.
|
* Primeiro crie uma variável para armazenar o número máximo entre dois.
|
||||||
@ -79,8 +78,7 @@ function sumAll(arr) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLm7/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Primeiramente, criamos uma variável chamada `sortedArr` que a classifica do menor para o maior valor.
|
* 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]);
|
sumAll([1, 4]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLm8/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Criando uma soma variável para armazenar a soma dos elementos.
|
* Criando uma soma variável para armazenar a soma dos elementos.
|
||||||
|
@ -58,8 +58,7 @@ function sumFibs(num) {
|
|||||||
sumFibs(4);
|
sumFibs(4);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnV/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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);
|
sumFibs(4);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/repls/ImpassionedFineConnection)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie uma matriz de números de fibonacci até **num** .
|
* Crie uma matriz de números de fibonacci até **num** .
|
||||||
|
@ -73,8 +73,7 @@ function sumPrimes(num) {
|
|||||||
sumPrimes(10);
|
sumPrimes(10);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLnZ/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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);
|
sumPrimes(10);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLn0/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* A função `isPrime` verifica se um determinado número é primo ou não.
|
* A função `isPrime` verifica se um determinado número é primo ou não.
|
||||||
@ -157,8 +155,7 @@ function sumPrimes(num) {
|
|||||||
sumPrimes(977);
|
sumPrimes(977);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/DoOo/3)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* **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.
|
||||||
|
@ -61,8 +61,7 @@ function whatIsInAName(collection, source) {
|
|||||||
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
|
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmh/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Nós filtramos através do array usando `.filter()` .
|
* 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" });
|
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmi/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Nós filtramos a coleção usando `.filter()` .
|
* 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" });
|
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmj/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Começamos filtrando a `collection` usando `Array.filter()` .
|
* Começamos filtrando a `collection` usando `Array.filter()` .
|
||||||
|
@ -63,8 +63,7 @@ Deixe qualquer coisa que não esteja entre o AZ como está.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/38)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Uma variável de string `nstr` é declarada e inicializada para armazenar a string decodificada.
|
* 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](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)
|
* [Regex.test](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test)
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/39)
|

|
||||||
|
|
||||||
##  Solução avançada de código:
|
##  Solução avançada de código:
|
||||||
```
|
```
|
||||||
function rot13(str) { // LBH QVQ VG!
|
function rot13(str) { // LBH QVQ VG!
|
||||||
|
@ -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]]);
|
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]]);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/@scissorsneedfoo/cash-register-example)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
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.
|
||||||
|
@ -52,8 +52,7 @@ Os `Array.prototype.split` e `Array.prototype.join` métodos podem ser de uso aq
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/2)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/3)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLjU/4)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Foi-me dado este problema em uma entrevista (spoiler: eu não fui contratado  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.
|
* Foi-me dado este problema em uma entrevista (spoiler: eu não fui contratado  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.
|
||||||
|
@ -62,8 +62,7 @@ var convertToRoman = function(num) {
|
|||||||
convertToRoman(36);
|
convertToRoman(36);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLmf/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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);
|
convertToRoman(97);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/C1YV)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* Crie uma matriz de numerais `romans` ( `romans` ).
|
* Crie uma matriz de numerais `romans` ( `romans` ).
|
||||||
@ -185,8 +183,7 @@ function convertToRoman(num) {
|
|||||||
convertToRoman(36);
|
convertToRoman(36);
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/C1YV)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
* 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.
|
||||||
|
@ -47,8 +47,7 @@ function telephoneCheck(str) {
|
|||||||
telephoneCheck("555-555-5555");
|
telephoneCheck("555-555-5555");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLo9/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### Explicação do código:
|
||||||
|
|
||||||
* `^` indica o começo da corda.
|
* `^` indica o começo da corda.
|
||||||
@ -75,8 +74,7 @@ function telephoneCheck(str) {
|
|||||||
telephoneCheck("555-555-5555");
|
telephoneCheck("555-555-5555");
|
||||||
```
|
```
|
||||||
|
|
||||||
 [Executar código](https://repl.it/CLoa/0)
|

|
||||||
|
|
||||||
### Explicação do código:
|
### 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.
|
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.
|
||||||
|
Reference in New Issue
Block a user