TheDocumentation Index
Fetch the complete documentation index at: https://docs.syntblaze.com/llms.txt
Use this file to discover all available pages before exploring further.
=== (strict equality) operator evaluates whether two operands are identical in both data type and value, strictly bypassing the implicit type coercion performed by the loose equality (==) operator.
=== implements the ECMAScript Strict Equality Comparison algorithm. The evaluation follows a rigid set of rules based on the operand types:
1. Type Evaluation
If the operands are of different data types, the engine immediately returnsfalse without attempting to convert them.
2. Primitive Value Comparison
If both operands are of the same primitive type, they are evaluated by their underlying values:- Strings: Returns
trueif both strings have the exact same sequence of 16-bit unsigned integer values (code units). - Booleans: Returns
trueif both aretrueor both arefalse. - Null & Undefined:
null === nullistrue, andundefined === undefinedistrue. - Symbols: Returns
trueonly if both operands reference the exact same Symbol instance. - BigInt: Returns
trueif both have the same mathematical integer value.
3. Numeric Edge Cases
When both operands are of typeNumber, the operator applies specific IEEE 754 floating-point rules:
NaN(Not-a-Number) is never equal to anything, including itself.- Positive zero (
+0) and negative zero (-0) are considered strictly equal.
4. Reference Type Comparison (Objects, Arrays, Functions)
When evaluating reference types,=== checks for referential equality (identity), not structural equality. It returns true if and only if both operands point to the exact same object instance in memory. Two distinct objects with identical properties and values will evaluate to false.
Master JavaScript with Deep Grasping Methodology!Learn More





