Null checks in user validation I would like to know an alternative, more elegant way to write the following method.  I am especially not enthusiastic of the nested if statement.

hasUserSavedCredentials: function () {
            var userName = Storage.get(CONFIG.app.storageUserName),
                password = Storage.get(CONFIG.app.storagePassword),
                result = false;
            if (userName !== null &amp;&amp; password !== null) {
                if (userName.length &gt; 0 &amp;&amp; password.length &gt; 0) {
                    result = true;
                    // save in state for faster retrivial
                    State.xx.isSaved = result;
                    State.xx.userName = userName;
                    State.xx.password = password;
                } else {
                    result = false;
                    State.xx.isSaved = false;
                }
            }
            return result;
        },
You can remove result = false;, as result is already false.

And to get rid of the nested statements, you could use early returns:

if (userName == null &amp;&amp; password == null) {
    return false;
}

if (userName.length &lt;= 0 &amp;&amp; password.length &lt;= 0) {
    State.xx.isSaved = false;
    return false;
}
State.xx.isSaved = true;
State.xx.userName = userName;
State.xx.password = password;
return true;


Is it correct that when username is null, isSaved = false should not be set? Because if not, then you could just combine the two if statements, either in my example, or in yours.