type plain data contenttype content javascript ecmascript-5

javascript - plain - post content type



type=“text/ecmascript” vs type=“text/javascript” (1)

Estaba leyendo un libro sobre el aprendizaje de JavaScript, y había estos párrafos:

... a mediados de 1997, Microsoft y Netscape, con un asociado de la Asociación Europea de Fabricantes de Computadoras,

Se lanzó la primera versión de un estándar que se llamó ECMAScript o con el formulario oficial ECMA-262 ...

Por mucho que me hayan encontrado en este libro y algo como esto, JavaScript y ECMAScript son lo mismo y son diferentes solo de nombre.

Por otro lado, en Dreamweaver, bracket y algunos otros editores, hay una sugerencia de autocompletar como esta:

Cuando quiero agregar una etiqueta de script a mi página.

Quiero saber si hay diferencias entre ECMAScript y Javascript y ¿cuándo debo usar text/javascript o text/ecmascript ?


ECMAScript es una especificación de lenguaje estandarizada por ECMA International como ECMA-262 e ISO / IEC 16262 . JavaScript es un lenguaje de programación que implementa esta especificación. ECMAScript existe en varias ediciones. La última edición es la sexta (en 2016), pero la mayoría de las implementaciones de JavaScript son compatibles con la quinta edición hasta el momento.

Además de las implementaciones comunes de JavaScript de ECMAScript, generalmente se agrega más funcionalidad, que puede ser estandarizada por otras instituciones (como el W3C) o puede ser características propietarias (también conocidas como "específicas del navegador") de la implementación específica. Por lo que se podría decir, que ECMAScript representa un subconjunto de JavaScript.

Sin embargo, los tipos MIME para el código JavaScript se definen en el documento RFC 4329 , que establece que text/javascript y text/ecmascript están obsoletos y deben reemplazarse por application/javascript y application/ecmascript :

Se sabe que el uso del tipo de nivel superior de "texto" para este tipo de contenido es problemático. Por lo tanto, este documento define text / javascript y text / ecmascript pero los marca como "obsoletos".

El RFC define reglas de procesamiento más estrictas para la application/ecmascript que para la application/javascript , pero esto se refiere al manejo de los parámetros de tipo MIME y la codificación de caracteres y no a la interpretación del código en sí:

En el caso citado, las implementaciones de los tipos text / javascript, text / ecmascript y application / javascript DEBEN ser implementadas los requisitos definidos en esta sección: [...]

Para el tipo de medio de aplicación / ecmascript, las implementaciones NO DEBEN procesar el contenido etiquetado con un parámetro de "versión" como si no se hubiera especificado dicho parámetro; [...]

El siguiente comportamiento de procesamiento de errores es RECOMENDADO para los tipos de medios text / javascript, text / ecmascript, y application / javascript, y REQUERIDO para la aplicación de tipos de medios / ecmascript.

En general, usaría application/javascript (o text/javascript si tiene que admitir navegadores más antiguos como IE8) para evitar problemas entre los navegadores. Si solo te importa HTML5, también puedes omitir el atributo de tipo completamente.