Escribí una declaración if usando los siguientes datos.
const data = { field: "" } const data2 = { field: "abc" } if (data.field && data.field !== data2.field) { console.log('not in') } Esperaba que si la condición devolviera true , pero devuelve una cadena vacía ( "" ), por lo que no está incluida en la rama.
Como se muestra a continuación, si no es una cadena vacía ( "" ), se devuelve verdadero. ¿Por qué no es true si se incluye una cadena vacía ( "" ) en la declaración condicional?
const data = { field: "ccc" } const data2 = { field: "abc" } if (data.field && data.field !== data2.field) { console.log('in') }