我正在研究tutorials for Javascript。我正在测试Boolean()
函数和If ... Else条件。
我在网站上只有一个按钮。当我单击按钮时,它会显示布尔变量(myvar
)的当前状态以及相应的状态(myvartxt
)(即false
表示“关闭”,{{1} }表示“开”)。这样做的原因是因为我希望稍后切换LED开/关并且不希望它说假/真,而是开/关。
现在的问题是,当我点击按钮时,布尔值(myvar)的状态为false,这是正确的,但是当它应该说OFF时,myvartxt变量为ON。我只是不明白。有任何想法吗?感谢您的帮助!
快速测试代码here:
true
答案 0 :(得分:0)
代码if (myvar)
错误,只需检查是否设置了myvar
。你必须改变陈述
if (myvar.toString() == true)
答案 1 :(得分:0)
您正在使用new Boolean()
创建新对象;和JavaScript中的对象评估为true
。
我认为,如果您放弃new
关键字并仅使用Boolean()
作为一项功能,您会发现行为更符合您的预期。
答案 2 :(得分:0)
首先,jQuery
这可以像这样重写:
// Perform logic when document is set and ready.
$(document).ready(function() {
var myvar = false; // No need for Boolean objects.
$("demo").html(myvar.toString()); // Set the value of demo.
myvar ? $("demo1").html("ON") : $("demo1").html("OFF"); // True/false ON/OFF in demo1
}