Pensando um pouco e olhando algumas postagens do fórum, cheguei no código abaixo, criando uma nova variável idadesOriginaisAmigos para que a terceira função chame busque pelas idades sem alteração. Porém, pensando no sentido de replicar funções para possíveis novos cálculos (por ex.: calculaIdadesDaqui10Anos, calculaIdadesDaqui12Anos, etc...), acredito que deve haver outra forma de solucionar tal problema sem ter que replicar as varáveis com idades "originais".
Caso alguém tenha essa luz e puder compartilhar por aqui, será de grande ajuda! =)
<meta charset = "UTF-8">
<script>
function calculaProximaIdade(idade) {
idade += 1;
console.log(idade);
}
function calculaProximasIdades(idades) {
for (let i = 0; i < idades.length; i += 1) {
idades[i] += 1;
}
console.log(idades);
}
function calculaIdadesDaqui5Anos(idades) {
for (let i = 0; i < idades.length; i += 1) {
idades[i] += 5;
}
console.log(idades);
}
const idadeStefany = 21;
const idadesAmigos = [idadeStefany, 20, 23, 18, 7];
const idadesOriginaisAmigos = [idadeStefany, 20, 23, 18, 7];
calculaProximaIdade(idadeStefany);
calculaProximasIdades(idadesAmigos);
calculaIdadesDaqui5Anos(idadesOriginaisAmigos);
</script>