Explicação Reparador da bandeira da Dinamarca
Objetivo deste desafio: Usar a função .replace()
para corrigir um erro em uma string.
Passo a passo da solução: Na linha 1, a variável flag
contém a string 'rwrr wbww rwrr'
. Na linha 2, essa string será usada como argumento para a função drawBoxes()
.
A bandeira da Dinamarca tem 2 cores: vermelho com uma cruz branca. Infelizmente, o ‘b’ em ‘rwrr wbwww rwrr’ significa que DrawBoxes()
colocará, por engano, uma caixa azul na bandeira. Podemos usar a função .replace()
para corrigir este erro. Dentro da função drawBoxes()
, .replace()
é adicionado ao final de flag
. Essa função procurará uma string alvo dentro de flag
e substituirá por uma nova string.
Dentro dos parênteses, .replace()
usa 2 argumentos, a string alvo 'b'
e a string substituta 'w'
. Quando o código for executado, .replace()
encontrará o 'b'
em 'rwrr wbww rwrr
e o substituirá por um 'w'
. Em seguida, drawBoxes()
desenhará a bandeira correta da Dinamarca.
É importante notar que a função .replace()
substituirá apenas a 1ª correspondência que encontrar. Se a string contivesse dois 'b'
s, somente o 1º (o mais à esquerda) seria substituído. Este post explica como se poderia “substituir todos”.
Solução do código de exemplo:
(Toque abaixo para revelar)
var flag = 'rwrr wbww rwrr';
drawBoxes(flag.replace('b', 'w'));
Conceitos de JavaScript: Variáveis, Strings, .replace()
Conceitos do Grasshopper: drawBoxes()