Boa noite.
Fiz a atividade dos anos e copas utilizando duas funções para finalidades diferentes. Mas durante a criação do código, "acidentalmente" percebi que as variáveis não precisam ser necessariamente declaradas. Procede? Exemplo: Na linha 19 eu havia declarado a variável: var msgFbck = (" ");
Depois a comentei para ajustar outros trechos. Ficando assim: //var msgFbck = (" "); Mesmo assim o código continuou funcionando.
Se alguém puder explicar, agradeço.
<meta charset="UTF-8">
<script>
function pulaLinha(){
document.write("<br>")
}
function mostraAlert(msg){
alert(msg);
pulaLinha();
}
function mostraPrint(msg){
document.write(msg);
pulaLinha();
}
function verifAnoCopa(anoAtual, anoCopa, anoUser){
//var msgFbck = (" ");
if((anoUser < anoCopa) || (anoUser > anoAtual)) {
msgFbck = alert("Você deve inserir um ano entre 1930 e 2021.");
}else{
while ((anoCopa <= anoAtual) && (anoCopa <= anoUser)){
if(anoCopa == anoUser){
msgFbck = ("Sim! Em " + anoUser + " teve copa.");
}else{
msgFbck = ("Não! Em " + anoUser + " não teve copa.");
}
anoCopa = anoCopa + 4;
}
}
mostraAlert(msgFbck);
}
function procAnosCopa(anoAtual, anoCopa, anoUser){
document.write("Os anos que tiveram copa de " + anoCopa + " até " + anoUser + " são:");
document.write("<br><br>");
while ((anoCopa <= anoAtual) && (anoCopa <= anoUser)){
msgFbck = anoCopa;
mostraPrint(msgFbck);
anoCopa = anoCopa + 4;
}
}
var anoAtual = 2021;
var anoCopa = 1930;
var anoUser = parseInt(prompt("Insira um ano de 1930 a 2021 para saber se teve copa."));
verifAnoCopa(anoAtual, anoCopa, anoUser);
procAnosCopa(anoAtual, anoCopa, anoUser);
</script>