===
) является аналогом оператора равенства ( ==
). Однако, в отличие от оператора равенства, который пытается преобразовать оба значения в общий тип, строгий оператор равенства не выполняет преобразование типа. Если сравниваемые значения имеют разные типы, они считаются неравными, а оператор строгого равенства возвращает false. Примеры 3 === 3 // trueВо втором примере
3 === '3' // false
3
является типом Number
а '3'
- String
. if
чтобы функция вернула «Равно», когда val
строго равно 7
testStrict(10)
должен вернуть «Не testStrict(10)
»
testString: 'assert(testStrict(10) === "Not Equal", "testStrict(10)
should return "Not Equal"");'
- text: testStrict(7)
должен вернуть «Равный»
testString: 'assert(testStrict(7) === "Equal", "testStrict(7)
should return "Equal"");'
- text: testStrict("7")
должен возвращать "Не равно"
testString: 'assert(testStrict("7") === "Not Equal", "testStrict("7")
should return "Not Equal"");'
- text: Вы должны использовать оператор ===
testString: 'assert(code.match(/(val\s*===\s*\d+)|(\d+\s*===\s*val)/g).length > 0, "You should use the ===
operator");'
```