In loosely typed languages such as JavaScript or PHP, using ==
to compare values is bad practice because it doesn’t
account for type, hence false == 0 == '' == null == undefined, etc.
And you may accidentally match more than you bargained for.
If you want you can limit unintented effects & bugs this may lead to,
it’s often wise to use ===.
In the process of converting legacy codebases to use these triple equality operators, I find that as a rule of thumb you can almost always force triple equality in case of comparing variables against non-numerical strings.
There’s just never a case where you want the text 'Kevin'
to pass for the boolean true, or the number 3.
And if that can still happen in your legacy codebase,
you’ll want to limit those risks rather sooner than later. Even if that
breaks things that now accidentally, work.