--- title: Строга рівність (===) slug: Web/JavaScript/Reference/Operators/Strict_equality tags: - JavaScript - Довідка - Оператор translation_of: Web/JavaScript/Reference/Operators/Strict_equality ---
Оператор строгої рівності (===) перевіряє, чи є два операнди рівними, повертаючи результат типу Boolean. На відміну від оператора рівності, оператор строгої рівності завжди вважає операнди різних типів різними.
x === y
Оператори строгої рівності (=== та !==) використовують алгоритм строгої рівності для порівняння двох операндів.
false.true тільки якщо вони посилаються на один і той самий об'єкт.null або обидва операнди дорівнюють undefined, повернути true.NaN, повернути false.+0 та -0 вважаються одним значенням.true або обидва дорівнювати false.Найпомітніша відмінність між цим оператором та оператором рівності (==) полягає в тому, що, якщо операнди належать до різних типів, оператор == намагається привести їх до одного типу перед порівнянням.
console.log("привіт" === "привіт"); // true
console.log("привіт" === "агов"); // false
console.log(3 === 3); // true
console.log(3 === 4); // false
console.log(true === true); // true
console.log(true === false); // false
console.log(null === null); // true
console.log("3" === 3); // false
console.log(true === 1); // false
console.log(null === undefined); // false
const object1 = {
name: "привіт"
}
const object2 = {
name: "привіт"
}
console.log(object1 === object2); // false
console.log(object1 === object1); // true
| Специфікація |
|---|
| {{SpecName('ESDraft', '#sec-equality-operators', 'Equality operators')}} |
{{Compat("javascript.operators.strict_equality")}}