Fala Diego, Beleza?
O return é relacionado ao resultado de uma determinada função porém, ele por sí só não realizaria a impressão do resultado na página html.
A função mostra realizar a impressão, através do comendo document.write, na página aberta no browser.
Você poderia fazer:
function calculaImc(peso, altura) {
let imc = peso / (altura * altura);
return "O seu IMC é: " + imc
}
Porém quando chamasse a função calculaImc() precisaria armazenar o resultado em uma variável para depois realizar a impressão dela através do document.write ou usando a função mostra(). Conforme exemplo abaixo.
function mostra(frase) {
document.write(frase);
}
function calculaImc(peso, altura) {
let imc = peso / (altura * altura);
return "O seu IMC é: " + imc
}
const meuIMC = calculaImc(105, 178)
mostra(meuIMC)
O return realmente retorna o resultado.
A função faz todo o trabalho e retorna um resultado. Esse resultado pode ser usado em outras funções, pode ser armazenado em variáveis, etc.
Espero ter ajudado. Abraço.