Oi, Gabriel! Tudo bem?
Ótimo código, parabéns! Deixo como sugestão apenas a atenção a necessidade de ao declarar variáveis com valores de texto usar aspas (" ou ') para definir strings, por exemplo, let nome = "Lua";, somado a isso, para usarmos o comando alert para exibir uma mensagem na tela não podemos redefini-lo como na tentativa alert = mensagemDeErro;, mas sim da seguinte forma:
let mensagemDeErro = "Erro! Preencha todos os campos";
alert(mensagemDeErro);
Espero ter ajudado!
Um forte abraço e bons estudos!