Javascript 函数似乎总是返回true

Javascript 函数似乎总是返回true,javascript,Javascript,我有一个函数,它应该根据本地存储中是否存在令牌返回一个布尔值,并将其分配给一个变量 export var isLoggedInVar = () => { return localStorage.getItem("token") ? true : false; }; 如果我显式地将isLoggedInVar设置为true或false,我的代码就会工作,并且当本地存储中有令牌时(控制台日志true),代码也会工作。但是,当本地存储中没有值时,默认情况下,代码呈现true

我有一个函数,它应该根据本地存储中是否存在令牌返回一个
布尔值
,并将其分配给一个变量

export var isLoggedInVar = () => {
 return localStorage.getItem("token") ? true : false;
};

如果我显式地将
isLoggedInVar
设置为
true
false
,我的代码就会工作,并且当本地存储中有令牌时(控制台日志
true
),代码也会工作。但是,当本地存储中没有值时,默认情况下,代码呈现
true
选项,控制台日志中的值是
f()
,而不是
false
。听起来很简单,但我不明白我在这里遗漏了什么?

在下面的三元条件语句中,我们首先检查
localStorage.getItem(“token”)
是否存在,如果是,我们将返回
true
否则
false

在您的代码中,三元条件始终设置为true,因此第二部分(即false)永远不会返回

export var isLoggedInVar = () => {
  return localStorage.getItem("token") ? true : false;
};
结果:


的第一个操作数是条件。如果将
true
放在那里,它将始终执行并返回第二个操作数。谢谢,我编辑了。同样的行为仍然存在。代码里写对了,但打错了。该死,我的错。。。深夜编码。但是,同样的行为。我会更新问题,谢谢!var用于isLoggedIn函数,它由控制台记录isLoggedIn:ƒ并呈现true选项。嗨,它工作正常。我已经用结果快照更新了答案