Veja este código:
<Body> <script src = "Deffer.js"> </sCript> Conteúdo </body>
O conteúdo do Deffer.js é:
Alerta (1)
Dessa forma, a página ficará em branco até que a janela de alerta seja fechada. Porque a janela de alerta impede que a página continue a renderizar.
Para evitar tais problemas, a especificação HTML define os atributos Deffer e Async. As definições específicas desses dois atributos não são discutidas aqui. De qualquer forma, eles são usados para dizer ao navegador que o conteúdo do script deve ser executado após a conclusão da renderização da página, para que a página tenha sido renderizada quando o script for executado.
<Body> <script deffer assync src = "Deffer.js"> </sCript> conteúdo </body>
Observe que, para vários scripts com o Deffer ou o Async adicionado, sua ordem de execução não tem nada a ver com o pedido que aparecem na página. Embora a especificação HTML defina que o script de Deffer deve ser executado em ordem, o navegador realmente não cumpre completamente esta convenção.