--- id: 599a789b454f2bbd91a3ff4d title: Practice comparing different values challengeType: 1 videoUrl: '' localeTitle: Практика сравнения разных значений --- ## Description
В двух последних проблемах мы узнали об операторе равенства ( == ) и строгого оператора равенства ( === ). Давайте сделаем быстрый обзор и практикуем использование этих операторов еще немного. Если сравниваемые значения не относятся к одному типу, оператор равенства выполняет преобразование типа, а затем оценивает значения. Тем не менее, строгий оператор равенства будет сравнивать как тип данных, так и значение as-is, без преобразования одного типа в другой. Примеры
3 == '3' // возвращает true, потому что JavaScript выполняет преобразование типов из строки в число
3 === '3' // возвращает false, потому что типы разные, и преобразование типов не выполняется
Заметка
В JavaScript вы можете определить тип переменной или значение с помощью оператора typeof следующим образом:
typeof 3 // возвращает 'number'
typeof '3' // возвращает 'string'
## Instructions
Функция compareEquality в редакторе сравнивает два значения с помощью equality operator . Измените функцию так, чтобы она возвращала «Равно» только тогда, когда значения строго равны.
## Tests
```yml tests: - text: 'compareEquality(10, "10") должен возвращать "Не равно"' testString: 'assert(compareEquality(10, "10") === "Not Equal", "compareEquality(10, "10") should return "Not Equal"");' - text: 'compareEquality("20", 20) должен возвращать "Не равно"' testString: 'assert(compareEquality("20", 20) === "Not Equal", "compareEquality("20", 20) should return "Not Equal"");' - text: Вы должны использовать оператор === testString: 'assert(code.match(/===/g), "You should use the === operator");' ```
## Challenge Seed
```js // Setup function compareEquality(a, b) { if (a == b) { // Change this line return "Equal"; } return "Not Equal"; } // Change this value to test compareEquality(10, "10"); ```
## Solution
```js // solution required ```