JavaScript 条件总是失败

JavaScript condition always fails

本文关键字:失败 条件 JavaScript      更新时间:2023-09-26

在下面的代码中,if语句总是失败。刚来JavaScript,想不通。

我相信代码是不言自明的。我做错了什么?

if (localStorage.user_name === null || localStorage.user_name === 'undefined') {
    registerUser(userName);
} else {
    login(localStorage.user_name);  // Gets executed always... Even if there is no user_name in localStorage.
}

问题出在你的第二个条件上。由于您使用的是 === ,并与字符串'undefined'进行比较,而不是 undefined ,因此它返回 false。所以,你需要localStorage === undefined,如

if (localStorage.user_name === null || localStorage.user_name === undefined)

或者,需要使用返回Stringtypeof。但是有更好的方法

if(!localStorage.user_name){
}