De MDN :
aplazar : -Este atributo booleano se establece para indicar a un navegador que el script debe ejecutarse después de que el documento se haya analizado. Dado que esta característica aún no ha sido implementada por todos los demás navegadores principales, los autores no deben suponer que la ejecución del script se aplazará . Nunca llame a document.write () desde un deferscript (desde Gecko 1.9.2, esto eliminará el documento). El atributo de aplazamiento no debe usarse en scripts que no tengan el atributo src. Desde Gecko 1.9.2, el atributo diferido se ignora en los scripts que no tienen el atributo src. Sin embargo, en Gecko 1.9.1, incluso los scripts en línea se difieren si se establece el atributo de aplazamiento.
asíncrono [HTML5]: establezca este atributo booleano para indicar que el navegador debe, si es posible, ejecutar el script de forma asincrónica. No tiene ningún efecto en los scripts en línea (es decir, los scripts que no tienen el atributo src ). En los navegadores más antiguos que no admiten el atributo asíncrono , las secuencias de comandos insertadas en el analizador bloquean el analizador; los scripts insertados con script se ejecutan de forma asincrónica en IE y WebKit, pero sincrónicamente en Opera y Firefox anterior a 4.0. En Firefox 4.0, la propiedad DOM asíncrona se establece de manera predeterminada en verdadero para las secuencias de comandos creadas por script, por lo que el comportamiento predeterminado coincide con el comportamiento de IE y WebKit. Para solicitar que los scripts externos insertados por script se ejecuten en el orden de inserción en los navegadores donde el document.createElement (“script”). Async se evalúa como verdadero (como Firefox 4.0), establezca .async = false en los scripts que desea mantener el orden . Nunca llame a document.write () desde un script asíncrono. En Gecko 1.9.2, llamar a document.write () tiene un efecto impredecible. En Gecko 2.0, llamar a document.write () desde un script anasync no tiene ningún efecto (aparte de imprimir una advertencia en la consola de error).
- ¿Cuánta energía ahorraría una página web de 10 Mb si se redujera a 1 Mb, al que accedía 1 millón de personas diariamente?
- ¿Cuál es la diferencia entre PHP y CakePHP?
- Cómo hacer mi propia etiqueta en xHTML
- ¿Sigues diseñando web si usas un tema premium comprado?
- ¿Cuál es mejor, Angular, React o Vue?
Los navegadores más antiguos / Opera pueden dar un grito.
Aquí está de Opera: –
http://dev.opera.com/articles/vi…
En donde dice:-
Opera ignora por completo el atributo de aplazamiento. y tiene una buena explicación de por qué lo hace.
Y aquí está el gran Yahoo, donde sugiere que es preferible colocar los scripts en la parte inferior de la página en comparación con el uso de aplazar:
http://developer.yahoo.com/blogs…
En donde dice:
Si se puede diferir un script, también se puede mover al final de la página.
Y aquí hay una buena publicación del desbordamiento de la pila que proporciona una mejor explicación de cuándo es conveniente colocar scripts en la parte inferior de la página:
http://stackoverflow.com/a/143527
También puede encontrar buenas prácticas cuando ejecuta el complemento YSlow en su página web.
Por lo tanto, diría que vaya a la colocación de etiquetas de script en la parte inferior de la página y organice los scripts en la parte superior o inferior según sus requisitos.