Javascript表达式求值-混淆

Javascript表达式求值-混淆,javascript,javascript-objects,Javascript,Javascript Objects,我有一个如下的表达 console.log('isSuperAdmin ' + user.user_role === "SUPER_ADMIN"); 正在控制台上打印false。但是,很明显,user.user\u role的值确实是“超级管理员”并且在DevTool上,当我将鼠标悬停在表达式user.user\u role===“超级管理员”上时,我会得到一个弹出窗口,显示为true。您能告诉我,为什么表达式在最后被计算为false PS:我不熟悉Javascript,所以请给我指出正确的方

我有一个如下的表达

console.log('isSuperAdmin ' + user.user_role === "SUPER_ADMIN");
正在控制台上打印false。但是,很明显,
user.user\u role
的值确实是
“超级管理员”
并且在DevTool上,当我将鼠标悬停在表达式
user.user\u role===“超级管理员”
上时,我会得到一个弹出窗口,显示为
true
。您能告诉我,为什么表达式在最后被计算为
false


PS:我不熟悉Javascript,所以请给我指出正确的方向。

==
之前完成
+
操作,因此最简单的解决方案是用
()
包围它,但是如果将第二条语句作为另一个参数添加到
控制台.log()
,效果会更好,因此,调试窗口可以以适当的方式显示它

console.log(“文本”+1==1);
log(“文本”+(1==1));

console.log(“text”,1==1)
===
之前完成
+
操作,因此最简单的解决方案是用
()
包围它,但是如果将第二条语句作为另一个参数添加到
控制台.log()
,则效果会更好,这样调试窗口就可以以适当的方式显示它

console.log(“文本”+1==1);
log(“文本”+(1==1));

console.log(“text”,1==1)谷歌搜索“JavaScript操作符优先”。优先级有点像,JS给你加了括号。你也希望
1+2===2
为真吗?谷歌搜索“JavaScript操作符优先级”。优先级有点像,JS给你放了括号。你也期望
1+2===2
为真吗?