Oi, Lucas. Tudo bem com você?
Obrigado por compartilhar sua resolução dos desafios. Seu código atende ao que foi proposto na maior parte dos exercícios e demonstra que você praticou conceitos importantes de JavaScript, como declaração de variáveis, uso do operador typeof, concatenação de strings, template strings, reatribuição de valores e estruturas condicionais. Também foi interessante organizar cada atividade em funções separadas, pois isso facilita a leitura e a manutenção do código.
Apenas um detalhe na atividade 3: o enunciado sugeria combinar a string e o número utilizando template strings, mas você utilizou concatenação tradicional. O resultado está correto, porém uma alternativa seria escrever let phrase = `${varstring}${varnumero}`;, aproveitando o recurso solicitado pelo exercício.
Na atividade sobre escopo, você apresentou um bom exemplo com var, mostrando que a variável declarada dentro do bloco pode ser acessada fora dele. Como complemento, seria interessante repetir exatamente o mesmo teste utilizando let, pois assim fica evidente que ela possui escopo de bloco e não poderá ser acessada fora do if, reforçando a principal diferença entre as duas declarações.
Como você imagina que o comportamento de const se encaixaria nesses mesmos exemplos de declaração e reatribuição de variáveis?
Parabéns pelo empenho em praticar os exercícios. Continue compartilhando suas soluções. O fórum segue à disposição para acompanhar sua evolução e esclarecer novas dúvidas.
Para saber mais:
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!