Eu estava tentando fazer um código de forma que calculasse uma nova média das idades a cada ano e uma outra forma de mostrar a idade com as váriaveis, mas para funcionar precisei repetir ou ''relembrar'' os valores da variável a cada ano. Eu gostaria de entender o porque disso, pois eu imaginei que com a variável ja definida, ela iria calcular automaticamente. Deixei as linhas em questão com // no código abaixo:
<meta charset="UTF-8">
<script>
var ano = 2023;
var nascimentoRafael = 2001
var idadeRafael = ano - nascimentoRafael
var nascimentoJulia = 2005
var idadeJulia = ano - nascimentoJulia
var nascimentoGabriel = 1997
var idadeGabriel = ano - nascimentoGabriel
var media = (idadeRafael + idadeJulia + idadeGabriel)/3;
var nome = "Rafael";
ano = 2023
document.write("<h1>" + "No ano de " + ano + "</h1>")
document.write("<br>")
document.write("Rafael terá " + (ano - nascimentoRafael) + " anos");
document.write("<br>")
document.write("Julia terá " + (ano - nascimentoJulia) + " anos");
document.write("<br>")
document.write("Gabriel terá " + (ano - nascimentoGabriel) + " anos");
document.write("<br>")
document.write("A média das idades é " + Math.round(media));
document.write("<br>")
document.write("A idade de " + nome + " em " + ano + " será " + idadeRafael);
document.write("<br>")
document.write("<br>")
ano = 2024
//idadeRafael = ano - nascimentoRafael
//idadeJulia = ano - nascimentoJulia
//idadeGabriel = ano - nascimentoGabriel
//media = (idadeRafael + idadeJulia + idadeGabriel)/3;
document.write("<h1>" + "No ano de " + ano + "</h1>")
document.write("Rafael terá " + (ano - nascimentoRafael) + " anos");
document.write("<br>")
document.write("Julia terá " + (ano - nascimentoJulia) + " anos");
document.write("<br>")
document.write("Gabriel terá " + (ano - nascimentoGabriel) + " anos");
document.write("<br>")
document.write("A média das idades é " + Math.round(media));
document.write("<br>")
document.write("A idade de " + nome + " em " + ano + " será " + idadeRafael);
ano = 2025
//idadeRafael = ano - nascimentoRafael
//idadeJulia = ano - nascimentoJulia
//idadeGabriel = ano - nascimentoGabriel
//media = (idadeRafael + idadeJulia + idadeGabriel)/3;
document.write("<h1>" + "No ano de " + ano + "</h1>")
document.write("Rafael terá " + (ano - nascimentoRafael) + " anos");
document.write("<br>")
document.write("Julia terá " + (ano - nascimentoJulia) + " anos");
document.write("<br>")
document.write("Gabriel terá " + (ano - nascimentoGabriel) + " anos");
document.write("<br>")
document.write("A média das idades é " + Math.round(media));
document.write("<br>")
document.write("A idade de " + nome + " em " + ano + " será " + idadeRafael);
</script>