Javascript 为什么在三元运算的输入中设置检查值会返回真值?
当我尝试使用此代码时,该代码无法正常工作:Javascript 为什么在三元运算的输入中设置检查值会返回真值?,javascript,html,forms,Javascript,Html,Forms,当我尝试使用此代码时,该代码无法正常工作: document.querySelector('#myInput').checked = false == 'false' ? false : true; // This set true 但这个代码是有效的: var checkedBoolean = false == 'false' ? false : true; // return false document.querySelector('#myInput').checked = checke
document.querySelector('#myInput').checked = false == 'false' ? false : true; // This set true
但这个代码是有效的:
var checkedBoolean = false == 'false' ? false : true; // return false
document.querySelector('#myInput').checked = checkedBoolean; // set true
为什么?谢谢,这是出于好奇。好吧,它总是
真的
,因为假的
永远不等于假的
,所以每次它都会返回真的
。即使在我测试它时,它每次都返回true(即使使用checkedBoolean
)
带变量的
无变量
跑
函数myFunction(){
document.getElementById(“button2”).disabled=false==“false”?false:true;//返回true
var checkedBoolean=false='false'?false:true;
document.getElementById(“button1”).disabled=checkedBoolean;//返回true
}
**更正第二个代码中的注释:document.querySelector(“#myInput”).checked=checkedBoolean;//set falsefalse==“false”
将始终返回false
,在三元代码中变为true
。