En los siguientes ejemplos, las variables ex1 y ex2 generarán una cadena vacía con un espacio y no un valor falso. Mientras que ex3 será falso y representará el lado derecho de || operador. ¿Cómo puedo probar una cadena vacía en los primeros dos ejemplos sin hacer una declaración if?
let var1 = ''; let var2 = ''; let ex1 = `${var1} ${var2}` || "Is Falsy"; let ex2 = var1 + ' ' + var2 || "Is Falsy"; let ex3 = var1 || "Is Falsy";
Creo que esto funcionará para usted:
sea ex2 = var1 || var2 || "Es falso";
¿Son aceptables los operadores ternarios?
let ex1 = var1 && var2 ? `${var1} ${var2}` : "Is Falsy";
Si está de acuerdo con el uso de operadores condicionales, puede hacerlo con la ayuda de trim()
:
let var1 = ''; let var2 = ''; let ex1 = (`${var1} ${var2}`).trim()/length > 0 ? `${var1} ${var2}` : "Is Falsy"; let ex2 = (var1 + ' ' + var2).trim().length > 0 ? var1 + ' ' + var2 : "Is Falsy"; let ex3 = var1 || "Is Falsy"; console.log(ex1); console.log(ex2); console.log(ex3);