Foros del Web » Programando para Internet » PHP »

¿Cuál es la diferencia entre un elseif y un if anidado?

Estas en el tema de ¿Cuál es la diferencia entre un elseif y un if anidado? en el foro de PHP en Foros del Web. Lo he estado pensando y, ¿no hacen exactamente lo mismo?...
  #1 (permalink)  
Antiguo 08/02/2015, 12:54
 
Fecha de Ingreso: diciembre-2014
Mensajes: 17
Antigüedad: 9 años, 3 meses
Puntos: 0
¿Cuál es la diferencia entre un elseif y un if anidado?

Lo he estado pensando y, ¿no hacen exactamente lo mismo?
  #2 (permalink)  
Antiguo 08/02/2015, 13:20
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 389
Antigüedad: 13 años, 1 mes
Puntos: 16
Respuesta: ¿Cuál es la diferencia entre un elseif y un if anidado?

No estoy seguro del concepto que tienes, pero en general el "else if" es un if anidado en base a alternativas, de todos modos aqui comento dos opciones a ver si es a lo que te refieres.

el if..elseif evalua dos condiciones distintas, se cumple una o se cumple la otra, pero no las dos.
Ejemplo con javascript
Código Javascript:
Ver original
  1. function nombreFuncion (a){
  2. if(a==9){
  3.     console.log("el valor es nueve");
  4. }else if(a==10){
  5.     console.log("el valor es diez");
  6. }else{
  7.     console.log("  el valor es "+a);
  8. }
  9. }

El script entrará en uno de los tres bloques y finalizará. en cambio un if anidado evalua un valor y si el se cumple, comprueba contra un segundo valor...
Ejemplo, no funcional pero que sirve
Código Javascript:
Ver original
  1. function nombrefuncion(a){
  2. if(isNaN(a) && typeof a!='undefined'){
  3.       if(typeof a =='string'){
  4.           console.log("es un string");  
  5.       }else if(typeof a =='object'){
  6.           console.log("es un objeto");
  7.       }
  8. }
  9. }

En este caso, sino se cumple el if inicial nisiquiera evaluan los if interiores.
__________________
Lo imposible es lo posible visto por los ojos de un incapaz.
Si te sirve la respuesta. dale + al karma.
Saludos
  #3 (permalink)  
Antiguo 08/02/2015, 14:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ¿Cuál es la diferencia entre un elseif y un if anidado?

Cita:
Lo he estado pensando y, ¿no hacen exactamente lo mismo?
Depende:

Código PHP:
if (x) {
  
// este es un if-anidado
  
if (y) {}
} else {
  
// este también es un if-anidado
  
if (z) {}
}

// aquí no hay ningún if-anidado
if (a) {}
else if (
b) {}
else if (
c) {}
else {}

// aunque se traduce a esto:
if (a) {}
else {
  if (
b) {}
  else {
    if (
c) {}
    else {}
  }

¿Podrías dar ejemplos claro de lo que planteas?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 08/02/2015, 17:50
 
Fecha de Ingreso: enero-2014
Mensajes: 36
Antigüedad: 10 años, 3 meses
Puntos: 4
Respuesta: ¿Cuál es la diferencia entre un elseif y un if anidado?

Probablemente la diferencia esté en la velocidad de procesamiento de la función. Creo que si tenemos el elseif es por algo.

Etiquetas: diferencia, elseif
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 23:42.