¿Cómo puedo escribir las siguientes instrucciones anidadas if en forma abreviada?

var count = 0;
if (count < 1){
   count ++;
   if(val1 == val2){    
      //do A
   }else{
      //do B
}else{          
   //do C
}
-2
Becky 11 dic. 2015 a las 14:35

3 respuestas

La mejor respuesta

Un enfoque aún más corto, sin necesidad de IIFE:

count < 1 ? (count++, val1 == val2 ? A() : B()) : C();
2
Nina Scholz 11 dic. 2015 a las 11:58

Debe usar el ?: Operador ternario para esto:

var count = 0;
a = (count < 1) ? (function () { count++; b = (val1 == val2) ? A() : B(); }()) : C();

Es mejor usar operadores ternarios con funciones de retorno.

2
Praveen Kumar Purushothaman 11 dic. 2015 a las 11:39

Puede usar ternary operator(?:) para la instrucción abreviada de la instrucción if else.

var count =0;
var result=(count<1) ? count++:val1==val2 ? alert("do A"):(alert("b"),alert("c"));
0
zahid 22 mar. 2016 a las 18:57