Loose equality causes real bugs:
let input = "0" // User typed "0"
if (input == false) {
// This runs! "0" == false is true
console.log("No input provided")
}
With ===, this bug is obvious:
if (input === false) {
// This doesn't run
// "0" is a string, false is a boolean
}
Teams often enforce === with linter rules. It's one of the easiest ways to prevent bugs.