freeCodeCamp/curriculum/challenges/spanish/02-javascript-algorithms-and-data-structures/debugging/catch-use-of-assignment-operator-instead-of-equality-operator.spanish.md

2.8 KiB

id, title, localeTitle, challengeType
id title localeTitle challengeType
587d7b85367417b2b2512b38 Catch Use of Assignment Operator Instead of Equality Operator Captura el uso del operador de asignación en lugar del operador de igualdad 1

Description

Los programas de derivación, es decir, los que hacen cosas diferentes si se cumplen ciertas condiciones, dependen de 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 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
}

Instructions

Corrija la condición para que el programa ejecute la rama derecha y se asigne el valor apropiado al result .

Tests

tests:
  - text: 'Tu código debería 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 <code class = "notranslate"> == </code> o <code class = "notranslate"> === </code> para probar la igualdad.
    testString: 'assert(code.match(/x\s*?===?\s*?y/g), "The condition can use either <code>==</code> or <code>===</code> to test for equality.");'

Challenge Seed

let x = 7;
let y = 9;
let result = "to come";

if(x = y) {
  result = "Equal!";
} else {
  result = "Not equal!";
}

console.log(result);

Solution

// solution required