Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Diferencia entre estos operadores

Estas en el tema de Diferencia entre estos operadores en el foro de Javascript en Foros del Web. Hola! podrían resolverme una pequeña duda que em surgió: ¿Que diferencia hay entre el operador == y === Es que yo de ingles poquito, y ...
  #1 (permalink)  
Antiguo 07/05/2013, 04:25
 
Fecha de Ingreso: octubre-2012
Mensajes: 39
Antigüedad: 11 años, 6 meses
Puntos: 0
Diferencia entre estos operadores

Hola! podrían resolverme una pequeña duda que em surgió:

¿Que diferencia hay entre el operador == y === Es que yo de ingles poquito, y en español no encontre nada.
  #2 (permalink)  
Antiguo 07/05/2013, 05:45
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 3 meses
Puntos: 206
Respuesta: Diferencia entre estos operadores

Javascript es un lenguage muy débilmente tipado; algunas operaciones hacen un "casting" del tipo de variable, es decir, la convierten de un tipo a otro según el contexto, automáticamente; lo que a veces puede provocar un desastre. La conversión trabaja de izquierda a derecha.

Ejemplo var suma = "1" + 1, el resultado será "11" porque convertirá el 1 en "1" automáticamente ya que el primer operador era un string.

Sin embargo var suma = 1 + "1" será ahora 2, porque ahora lo convirtió a número entero.

El operador de igualdar == hace la conversión antes de comparar, así que 1=="1" es true,
1==true es true (cualquier número distinto de cero lo convierte a true), ""==false es true (la cadena vacía la convierte en FALSE), etc.

Sin embargo, la comparación con el tripe igual, === no hace la conversión, asi que "1" === 1 es FALSE. O dicho de otro modo, el tirpe igual se asegura que el TIPO de dato y su valor sean exactamente iguales. Por ello, se suele recomendar el uso de === en vez de == para la inmensa mayoría de las ocasiones.
  #3 (permalink)  
Antiguo 07/05/2013, 09:04
 
Fecha de Ingreso: octubre-2012
Mensajes: 39
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Diferencia entre estos operadores

Muchas gracias, es una buena explicación. Me parece increíble que ya este en las practicas para supuestamente ser desarrollador web(me queda un largo camino) y que ni siquiera nos lo hayan mencionado en clase. Siempre hemos usado el == para todo, y ahora me dices que lo mas normal es ===. Lo dicho, queda un largo camino por recorrer.

Etiquetas: diferencia, operadores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:33.