--- id: 587d7b85367417b2b2512b38 title: Catch Use of Assignment Operator Instead of Equality Operator challengeType: 1 videoUrl: '' localeTitle: Captura el uso del operador de asignación en lugar del operador de igualdad --- ## Description
Los programas de ramificación, es decir, los que hacen cosas diferentes si se cumplen ciertas condiciones, se basan en las declaraciones 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 utilizando 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 .
sea ​​x = 1;
sea ​​y = 2;
si (x = y) {
// este bloque de código se ejecutará para cualquier valor de y (a menos que y se haya establecido originalmente como falsy)
} else {
// este bloque de código es lo que debería ejecutarse (pero no lo hará) en este ejemplo
}
## Instructions
Corrija la condición para que el programa ejecute la rama derecha y se asigne el valor apropiado al result .
## Tests
```yml tests: - text: 'Su código debe arreglar la condición para que verifique la igualdad, en lugar de usar la asignación.' testString: 'assert(result == "Not equal!", "Your code should fix the condition so it checks for equality, instead of using assignment.");' - text: La condición puede usar == o === para probar la igualdad. testString: 'assert(code.match(/x\s*?===?\s*?y/g), "The condition can use either == or === to test for equality.");' ```
## Challenge Seed
```js let x = 7; let y = 9; let result = "to come"; if(x = y) { result = "Equal!"; } else { result = "Not equal!"; } console.log(result); ```
## Solution
```js // solution required ```