3.9 KiB
3.9 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
587d7b85367417b2b2512b38 | Catch Use of Assignment Operator Instead of Equality Operator | 1 | Поймать использование оператора присваивания вместо оператора равенства |
Description
if
, else if
и else
в JavaScript. Условие иногда принимает форму проверки того, равен ли результат равному значению. Эта логика произносится (по крайней мере, на английском языке) как «если x равно y, тогда ...», которая может буквально перевести на код с помощью оператора =
или присваивания. Это приводит к непредвиденному потоку управления в вашей программе. Как описано в предыдущих задачах, оператор присваивания ( =
) в JavaScript присваивает значение имени переменной. И операторы ==
и ===
проверяют равенство (тройные ===
тесты для строгого равенства, что означает как значение, так и тип). Приведенный ниже код присваивает x
равному 2, который оценивается как true
. Почти каждое значение само по себе в JavaScript оценивается как true
, кроме тех, которые известны как «ложные» значения: false
, 0
, ""
(пустая строка), NaN
, undefined
и null
. пусть x = 1;
пусть у = 2;
если (x = y) {
// этот кодовый блок будет выполняться для любого значения y (если y изначально не было установлено как ложь)
} else {
// этот блок кода - это то, что должно выполняться (но не будет) в этом примере
}
Instructions
result
. Tests
tests:
- text: 'Ваш код должен исправить условие, поэтому он проверяет равенство вместо использования назначения.'
testString: 'assert(result == "Not equal!", "Your code should fix the condition so it checks for equality, instead of using assignment.");'
- text: Условие может использовать либо <code>==</code> или <code>===</code> для проверки равенства.
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