Eu não tenho uma duvida especifica no exercicio, mas eu sempre vi inserir os scripts no head, qual a diferença de inserir os scripts no body?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Eu não tenho uma duvida especifica no exercicio, mas eu sempre vi inserir os scripts no head, qual a diferença de inserir os scripts no body?
O carregamento da página é sequencial (de cima pra baixo). As coisas que são inseridas no head são carregadas primeiro, depois as coisas do body.
Isso significa que, se você colocar o seu script no head, enquanto o browser não carregar aquele script nada da sua página que esteja abaixo dele será carregado.
Por isso, a não ser que seu script seja imprescindível antes de qualquer outro carregamento, indica-se colocar ele no final do body. Dá a impressão de um site mais leve, que carrega mais rápido.
Existe também a opção de carregamento assíncrono, mas eu ainda não estudei sobre isso.
Espero ter ajudado. Abraço e bons estudos!
Muito obrigado, foi muito util essa informação.
Por nada, amigo. Não tenho muita bagagem como alguns mitos aqui mas no que posso procuro ajudar.
Disponha...
PS: Acho que você deveria marcar como solução caso tenha realmente sanado a sua dúvida.
Ismael é exatamente pelo motivo que o Rafael falou, sempre colocamos e/ou importamos scripts antes do fechamento da tag body para não deixar a página lenta diminuindo a performance, pois enquanto os mesmos não forem carregados a página não irá se carregar.
Sobre carregamento assíncrono de script ao grosso modo basta apenas adicionar o atributo async no script, exemplo:
<script async src="meuarquivo.js" type="text/javascript"></script>
Espero ter ajudado
Matheus, sobre esse carregamento assíncrono. Se eu colocar mais de um script com essa tag eles vão carregar em paralelo? E isso tudo junto com o corpo da página?
Sim Rafael, exatamente, mas deve-se usar cuidado para utilizar a tag pois ja tive problemas de scripts pararem de funcionar devido a ordem de carregamento.
Particularmente não aconselho o uso, apenas em extrema necessidade.