Ok, so I installed Linter on my Sublime editor while working on my node.js app. One of the things that it caught said that I should always use !== to compare an object to nu
The only value that doesn't equal itself in JavaScript is NaN. If null === null is false, then your JavaScript engine has serious problems ;)
To make sure your conditional statement is well written, always use the braces.
var x = null;
if (x !== null) {
    console.log('x is not equal to null');
}
                                                                        It is even more simple
var x = null;
    if (x) 6 
    if (!x) 7
the result is
undefined
7
                                                                        Your global.User is undefined, not null. When using == they evaluate to equal, but with === the items you are comparing need to be the same type. undefined has the type undefined and null has the type object.
undefined and null are very similar, but they generally mean two very different things. Usually undefined is the result when something has had no value assigned to it, whereas null has a value, and the value is explicitly set to "nothing".