Hint
Coercion is not transitive: false==0, false=="", but 0!="0" in string context.
console.log(false == 0);
console.log(false == '');
console.log(false == '0');
console.log(0 == '');
console.log(0 == '0');
console.log('' == '0');true true true true true false
Explanation: All combinations of false/0/"" coerce to 0 and are equal. But "0" as a string and "" as a string are NOT equal to each other β string comparison, no coercion needed.
Key Insight: Coercion is not transitive: false==0, false=="", but 0!="0" in string context.