将函数的值赋给javascript中同名的变量
我在读关于提升的书,在我的编辑中我尝试了这个 函数loginUser(){ 返回“Hi”} const loginUser=loginUser()将函数的值赋给javascript中同名的变量,javascript,Javascript,我在读关于提升的书,在我的编辑中我尝试了这个 函数loginUser(){ 返回“Hi”} const loginUser=loginUser() 我收到错误消息,在重新初始化之前无法访问“loginUser”。这和吊装有关吗。我能解释一下为什么会出现这个错误吗?我无法重现您所遇到的错误。我的JS引擎日志: SyntaxError:已声明标识符“loginUser” 函数声明声明了一个名为logiuser的变量 您的const声明声明了一个变量名logiuser const无法重新声明已存在于同
我收到错误消息,在重新初始化之前无法访问“loginUser”。这和吊装有关吗。我能解释一下为什么会出现这个错误吗?我无法重现您所遇到的错误。我的JS引擎日志: SyntaxError:已声明标识符“loginUser” 函数声明声明了一个名为
logiuser
的变量
您的const
声明声明了一个变量名logiuser
const
无法重新声明已存在于同一作用域中的变量,因此出现错误
您的错误消息(这似乎是您环境中的一个奇怪现象)表示,由于您刚刚说了
const loginUser
,您无法读取要分配给它的值loginUser
,因为新值还不存在。不知道您在代码中的何处遇到了该错误,我猜这可能与“嗨”之后缺少分号有关。你为什么要尝试这样的事情?它没有任何意义。@Russ-它与ASI无关。如果您使用var
而不是const
,它就会工作。但这是危险的(这就是为什么我总是建议尽可能使用const
,以捕获像这样的潜在bug)。