Danish Flag Fixer pt-br Explainer

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()