Etiqueta <script> de HTML
La etiqueta HTML <script> declara scripts del lado del cliente (JavaScript) en un documento HTML. Al definir un script del lado del cliente, la etiqueta <script> se utiliza para la manipulación de imágenes, validación de formularios y cambios dinámicos de contenido. La etiqueta puede incluir el script en sí mismo o un enlace a un archivo externo que contenga scripts. La ruta al archivo externo se especifica con el atributo src.
peligro
Si conectas un archivo externo con scripts, no incrustes el script en la misma etiqueta
<script>.
La etiqueta HTML <script> puede colocarse en el <head> elemento, así como dentro del <body> elemento. Los scripts que deben ejecutarse primero a menudo se colocan en el elemento <head> con defer, o al final del elemento <body>. La etiqueta <script> puede utilizarse varias veces en un documento HTML.

Sintaxis
La etiqueta <script> se usa en pares. El contenido se escribe entre las etiquetas de apertura (<script>) y cierre (</script>).
Notas importantes
Existen varias formas en las que se puede ejecutar un script externo:
- Por defecto (sin
asyncnidefer), el script bloquea el análisis de HTML y se ejecuta inmediatamente al encontrarse. - El atributo
defer="defer"indica que el script se ejecuta después de que el documento HTML haya sido completamente analizado. - El atributo
async="async"indica que el script se ejecuta de forma asíncrona, tan pronto como se descarga, sin bloquear el análisis.
Para seleccionar un elemento HTML, JavaScript utiliza el método document.getElementById().
Ejemplo de la etiqueta HTML <script>:
Etiqueta HTML script
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
</head>
<body>
<p id="example"></p>
<script>
document.getElementById("example").innerHTML = "My first JavaScript code";
</script>
</body>
</html>Diferencias entre HTML 4.01 y HTML5
HTML 4 requiere el atributo type, mientras que en HTML5 es opcional. En HTML5, el atributo async es nuevo. HTML5 no admite el atributo xml:space de HTML 4.01.
Diferencias entre HTML y XHTML
En XHTML, el contenido dentro de los scripts se declara como #PCDATA (en lugar de CDATA). En estos casos, las entidades se analizarán.
En XHTML, todos los caracteres especiales deben codificarse, o todo el contenido debe envolverse dentro de una sección CDATA.
Ejemplo de etiqueta HTML script
<script type="text/javascript">
//<![CDATA[
var i = 10;
if (i < 5) {
// some code
}
//]]>
</script>Atributos
| Atributo | Valor | Descripción |
|---|---|---|
| async | async | Indica que el script se ejecuta de forma asíncrona. |
| charset | charset | Define la codificación de caracteres, utilizada en un archivo externo con el código JavaScript. Obsoleto en HTML5. |
| defer | defer | Indica que el script debe ejecutarse después de la carga de la página. |
| src | URL | Define la URL de un archivo externo con el código JavaScript. (Puede definirse como relativa o absoluta). |
| type | media_type | Define el tipo MIME del script. |
La etiqueta <script> admite los Atributos Globales y los Atributos de Evento.
Práctica
¿Qué hace la etiqueta HTML <script>?