Olá! Boa noite a Todos! Por curiosidade durante a aula sobre o uso de laços de repetição (while/for) com os comandos dentro da função afim de desenhar os quadrados, resolvi recriar a bandeira LGBT com meu código a seguir:
<!DOCTYPE HTML>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
<canvas width="600" height="400"></canvas>
</html>
<script>
function drawSquare(x,y,color){
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d')
pincel.fillStyle = color;
pincel.fillRect(x, y, 50, 50);
pincel.strokeStyle = 'black';
pincel.strokeRect(x, y, 50, 50);
}
var x = 0;
while(x < 600) {
drawSquare(x,0,'red');
drawSquare(x,50,'orange');
drawSquare(x,100,'yellow');
drawSquare(x,150,'green');
drawSquare(x,200,'blue');
drawSquare(x,250,'purple');
x = x + 50;
}
</script>
Contudo, como podem ver, tive de repetir algumas vezes o comando drawSquare (desenhar quadrado). Como posso simplificar ainda mais meu código, tendo em vista que o eixo Y também está crescendo de forma similar ao eixo X?