Por las prisas y otras cuestiones que seuguro muchos de nosotros hemos tenido que afrontar alguna vez me he visto en la necesidad de utilizar este trozo de código, al verlo me ha parecido digno de ser mostrado en un post.
if ((((oInfoSlideNew.sType == oInfoSlidePrev.sType) && (oInfoSlideNew.sType != this.oConfiguration.XXXX)) || ((oInfoSlidePrev.sType == this.oConfiguration.YYYY) && (oInfoSlideNew.sType == this.oConfiguration.ZZZZ)) || ((oInfoSlidePrev.sType == this.oConfiguration.ZZZZ) && (oInfoSlideNew.sType == this.oConfiguration.YYYY))) && (this.mcTransitions._currentframe > 1))
En ocasiones como esta suelo almacenar en variables el resultado de las comparaciones para que el if sea más pequeño, si la situación lo permite y es necesario creo métodos para que hagan algunas comparaciones, pero bueno, esto es lo que hay hoy para comer.
Comentarios, experiencias, críticas, recomendaciones y todo lo que quieran aportar, ya saben donde van.
Saludos!!!
3 replies on “El if más larga que he hecho”
Ouch! Duele a la vista : )
Yo lo partiría como dices en variables justo antes del if para hacer la comparación mucho más clara y corta.
Además igual te interesa anidar en varios ifs porque normalmente necesitas en estas situaciones una respuesta diferente dependiendo de cuál de las comparaciones ha fallado.
Pero efectivamente hay veces que la circunstancias mandan.
Salud!
Hola Juan, que gusto verte por aquí. Pues si, a veces las circunstancias no son las que nos gustaría.
Pues eso, con variables sobre el if o con métodos, esas son las formas que conozco y utilizo, como también dices anidando los if si la situación nos lo permite.
Saludos y gracias por tu comentario.
Bueno bueno.. tras revisarlo un par de veces, he de decir que (aun sin saber muy bien que son XXX YYY y ZZZ) la expresión es correcta y lo más elegante que podría ser.
😉