javascript - ejemplos - etiquetas html 5
¿Son los comentarios HTML dentro de las etiquetas de script una mejor práctica? (10)
De acuerdo con la Recomendación W3C , fue principalmente útil para ocultar los datos del script de AGENTES DE USUARIOS.
Citado de la página W3c :
Comentar scripts en JavaScript El motor JavaScript permite que la cadena "<!--"
aparezca al comienzo de un elemento SCRIPT e ignora otros caracteres hasta el final de la línea. JavaScript interpreta "//" como iniciar un comentario que se extiende hasta el final de la línea actual. Esto es necesario para ocultar la cadena "->" del analizador de JavaScript.
<SCRIPT type="text/javascript">
<!-- to hide script contents from old browsers
function square(i) {
document.write("The call passed ", i ," to the function.","<BR>")
return i * i
}
document.write("The function returned ",square(5),".")
// end hiding contents from old browsers -->
</SCRIPT>
La siguiente práctica es bastante común en el JavaScript en línea con el que tengo que trabajar:
<script type="text/javascript">
<!--
// Code goes here
//-->
</script>
Sé que el objetivo es evitar que los navegadores que son incompatibles con JavaScript reproduzcan la fuente, pero ¿sigue siendo una buena práctica hoy en día? La gran mayoría de los navegadores que se usan hoy en día pueden interpretar JavaScript; incluso los dispositivos móviles modernos generalmente no tienen problemas.
En cuanto al ''¿por qué no?'' pregunta: Recientemente tuve que pasar varias horas depurando un problema donde alguien había dejado el ''//'' delante de ''->'' al final de una etiqueta de script enterrada profundamente en algunas páginas, y esto causaba un misterioso JavaScript errores
¿Qué haces? ¿Esto todavía se considera una "mejor práctica"?
Dejé de hacer eso hace siglos. Realmente no lo necesitas en este día y edad.
Dejó de usar esto hace un tiempo. Además, de acuerdo con Douglas Crockford , puede descartar el atributo de tipo de las etiquetas de secuencia de comandos ya que el único lenguaje de secuencia de comandos disponible en la mayoría de los navegadores es JavaScript.
He dejado de hacerlo. En algún momento solo tienes que soltar tu Mosaico NCSA.
Lo importante es que hoy en día, si un navegador en particular es compatible con JavaScript o no es irrelevante (claramente lo hace la gran mayoría); es irrelevante porque casi todos entienden los bloques de scripts, lo que significa que saben ignorar el JavaScript incluso si no pueden interpretarlo.
Matt Kruse da una explicación un poco más detallada en su sitio JavaScript Toolbox sobre por qué específicamente no usar comentarios HTML dentro de bloques de script.
Citado de esa página:
No use comentarios HTML en bloques de scripts
En los días antiguos de javascript (1995), algunos navegadores como Netscape 1.0 no tenían ningún soporte o conocimiento de la etiqueta del script. Entonces, cuando se lanzó javascript por primera vez, se necesitaba una técnica para ocultar el código de los navegadores más antiguos para que no se muestren como texto en la página. El ''truco'' consistía en utilizar comentarios HTML dentro del bloque de script para ocultar el código.
El uso de comentarios HTML en el script es malo
// DON''T do this! Code is just representative on how things were done
<script language="javascript">
<!--
// code here
//-->
</script>
Ningún navegador de uso común en la actualidad ignora la etiqueta <script>, por lo que ya no es necesario ocultar la fuente de JavaScript. De hecho, puede considerarse perjudicial por los siguientes motivos:
- Dentro de los documentos XHTML, la fuente se ocultará de todos los navegadores y se volverá inútil
- - no está permitido en los comentarios de HTML, por lo que cualquier operación de disminución en el script no es válida
No lo hago, pero el otro día fui a validar mi sitio protegido con contraseña en w3c. Entonces tuve que usar su método de entrada directa. Se quejaba de mi javascript, así que puse los comentarios en todo estaba bien.
No, es una resaca de una solución alternativa utilizada cuando el elemento script se introdujo por primera vez. Ningún navegador no puede comprender el elemento script en la actualidad (incluso si lo entiende como "Script que debe ignorarse porque el scripting está desactivado o no es compatible").
En XHTML, son activamente dañinos.
Hace un tiempo escribí algo sobre su historia .
Recomendaría usar una sección CDATA, como se describe en esta pregunta .
Si está escribiendo manualmente, le sugiero que siempre use archivos js externos, que podrían ser de gran ayuda.
Respecto a su preocupación: la mayoría de los navegadores hoy en día son seguros para JavaScript. Sin embargo, a veces las personas pueden escribir analizadores simples para obtener un HTML directamente, y debo decir que la cita segura es realmente útil para esos clientes. También algunos clientes que no son JS como el antiguo Lynx obtendrían beneficios de esto.
Si no incluye texto literal entre las etiquetas de script, es decir, si carga scripts de archivos src, puede olvidarse de los comentarios.