==
) and the strict equality operator (===
). Let's do a quick review and practice using these operators some more.
If the values being compared are not of the same type, the equality operator will perform a type conversion, and then evaluate the values. However, the strict equality operator will compare both the data type and value as-is, without converting one type to the other.
Examples
3 == '3' // returns true because JavaScript performs type conversion from string to numberNote
3 === '3' // returns false because the types are different and type conversion is not performed
typeof
operator, as follows:
typeof 3 // returns 'number'
typeof '3' // returns 'string'
compareEquality
function in the editor compares two values using the equality operator
. Modify the function so that it returns "Equal" only when the values are strictly equal.
compareEquality(10, "10")
should return "Not Equal"'
testString: 'assert(compareEquality(10, "10") === "Not Equal", ''compareEquality(10, "10")
should return "Not Equal"'');'
- text: 'compareEquality("20", 20)
should return "Not Equal"'
testString: 'assert(compareEquality("20", 20) === "Not Equal", ''compareEquality("20", 20)
should return "Not Equal"'');'
- text: You should use the ===
operator
testString: 'assert(code.match(/===/g), ''You should use the ===
operator'');'
```