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
为真吗?