if
, else if
, y else
en JavaScript. La condición a veces toma la forma de probar si un resultado es igual a un valor.
Esta lógica se habla (en inglés, al menos) como "si x es igual a y, entonces ..." que puede traducirse literalmente en código usando el operador =
, o asignación. Esto conduce a un flujo de control inesperado en su programa.
Como se cubrió en desafíos anteriores, el operador de asignación ( =
) en JavaScript asigna un valor a un nombre de variable. Y los operadores ==
y ===
verifican la igualdad (las pruebas triples ===
para la igualdad estricta, lo que significa que tanto el valor como el tipo son iguales).
El siguiente código asigna x
para ser 2, que se evalúa como true
. Casi todos los valores en JavaScript se evalúan como true
, excepto lo que se conoce como valores "falsos": false
, 0
, ""
(una cadena vacía), NaN
, undefined
y null
.
let x = 1;
let y = 2;
if (x = y) {
// this code block will run for any value of y (unless y were originally set as a falsy)
} else {
// this code block is what should run (but won't) in this example
}
result
.
==
o ===
para probar la igualdad.
testString: 'assert(code.match(/x\s*?===?\s*?y/g), "The condition can use either ==
or ===
to test for equality.");'
```