Etiqueta <script> frente a etiqueta <script type = 'text / javascript'>

97

Me preguntaba cuál es la diferencia entre

<script>

y

<script type = 'text/javascript'>

¿Es diferente para diferentes servidores web?

Por ejemplo, (sé que es incorrecto proporcionar un enlace de w3schools, pero mira)

http://www.w3schools.com/js/tryit.asp?filename=tryjs_myfirst

Usando Chrome, visité w3schools y me di cuenta de que la <script>etiqueta es todo lo que necesito.

Sin embargo, cuando hice una prueba de JavaScript sin conexión, me di cuenta de que necesitaba el

<script type = 'text/javascript'>

etiqueta. ¿Por qué esto es tan?

Neo Lok Jun
fuente
@ Pumbaa80 Mi pregunta es diferente. Pregunté si se ve afectado por diferentes servidores web
Neo Lok
2
Es un duplicado y esto no depende del servidor web. Si cree que necesita el atributo en una prueba fuera de línea, debe presentar preguntar sobre eso específicamente y proporcionar un código que demuestre lo que quiere decir (y explicar por qué cree que lo “necesita”).
Jukka K. Korpela
1
@ JukkaK.Korpela nope. También especifiqué mi propio problema.
Neo Lok

Respuestas:

90

En HTML 4, se requiere el atributo de tipo. En mi experiencia, todos los navegadores usarán texto / javascript de forma predeterminada si no está presente, pero ese comportamiento no está definido en ninguna parte. Si bien, en teoría, puede omitirlo y asumir que se interpretará como JavaScript, es HTML no válido, así que ¿por qué no agregarlo?

En HTML 5, el atributo de tipo es opcional y por defecto es texto / javascript.

Use <script type="text/javascript">o simplemente <script>(si se omite, el tipo es el mismo). No lo use <script language="JavaScript">; el atributo de idioma está en desuso

Ref :
http://social.msdn.microsoft.com/Forums/vstudio/en-US/65aaf5f3-09db-4f7e-a32d-d53e9720ad4c/script-languagejavascript-or-script-typetextjavascript-?forum=netfxjscript
y
diferencia entre < script> etiqueta con tipo y <script> sin tipo?

¿Necesita un atributo de tipo?

Estoy usando HTML5- No

No estoy usando HTML5 - Sí

Solo codigo
fuente
Pero, ¿por qué w3schools try-it-editor no requiere toda la línea?
Neo Lok
¿Estás citando ese texto de algo?
thefourtheye
9
@dholakiyaankit Por favor, cite también la fuente. Ahora la gente podría pensar que estas son tus propias palabras.
thefourtheye
1
@LuizaRodrigues text / javascript es obsoleto, siempre use application / javascript cuando lo desee. stackoverflow.com/a/21098951/2630817
Solo codifique el
1
@Justcode gracias !!!
Luiza Rodrigues
29

<script> es HTML 5.

<script type='text/javascript'> es HTML 4.x (y XHTML 1.x).

<script language="javascript"> es HTML 3.2.

¿Es diferente para diferentes servidores web?

No.

cuando hice una prueba de JavaScript sin conexión, me di cuenta de que necesitaba la <script type = 'text/javascript'>etiqueta.

Ese no es el caso. Algo más debe haber estado mal con su caso de prueba.

Quentin
fuente
13

Douglas Crockford dice :

type="text/javascript"

Este atributo es opcional. Desde Netscape 2, el lenguaje de programación predeterminado en todos los navegadores ha sido JavaScript. En XHTML, este atributo es obligatorio e innecesario. En HTML, es mejor omitirlo. El navegador sabe qué hacer.

En HTML 4.01 y XHTML 1 (.1), el typeatributo para <script>elementos es obligatorio .

Zaheer Ahmed
fuente
¿De dónde has sacado eso?
Neo Lok
@leonneo: hay un enlace en la respuesta.
Quentin
@leonneo tomado de javascript.crockford.com/script.html como enlace agregado en la parte superior.
Zaheer Ahmed
4
Solo para aclarar: Crockford está hablando de hacer que funcione , en lugar de hacerlo válido .
user123444555621
1
Me tenías en Douglas.
WynandB
5
<!-- HTML4 and (x)HTML -->
<script type="text/javascript"></script>


<!-- HTML5 -->
<script></script>

El atributo type identifica el lenguaje de programación del código incrustado dentro de un elemento de secuencia de comandos o referenciado a través del atributo src del elemento. Esto se especifica como un tipo MIME; ejemplos de tipos MIME admitidos incluyen texto / javascript, texto / ecmascript, aplicación / javascript y aplicación / ecmascript. Si este atributo está ausente, el script se trata como JavaScript.

Ref: https://developer.mozilla.org/en/docs/Web/HTML/Element/script

Krish R
fuente
-1

Solo necesitas <script></script>Tag, eso es todo. <script type="text/javascript"></script>no es una etiqueta HTML válida , por lo que, para las mejores prácticas de SEO, utilice<script></script>

Mohsin Saeed
fuente