【发布时间】:2014-06-20 22:56:21
【问题描述】:
大家好,我实际上是在做一个简单的 javascript 来检查布尔值。我知道这已经被问过很多次了。我对 javascript 还很陌生,这几乎都是关于基本的,不是吗?
<script>
var boolValue = true;
function f1()
{
if(boolValue == true)
alert("This is true!");
else
alert("This is false!");
}
</script>
问题是这个脚本永远不会起作用。即使 boolValue 设置为 false,boolValue 也是 true。我不知道我是否在这里遗漏了什么,但这对于我遇到的其他语言来说是微不足道的。您在同一范围内的函数外部声明了一个变量。我希望可以在 f1() 中访问 boolValue?我也用 === 做到了这一点。
所以这就是我实际上正在做的事情,我正在玩有关 W3C JavaScript 基本介绍的教程。我到处玩,我想在按钮上做一个切换效果来改变消息。
所以我做了什么:
<!DOCTYPE html>
<html>
<body>
<h1>My First JavaScript</h1>
<p>JavaScript can change the content of an HTML element:</p>
<button type="button" onclick="myFunction()">Click Me!</button>
<p id="demo">This is a demonstration.</p>
<script>
var status = true;
function myFunction()
{
if(status == true)
{
document.getElementById("demo").innerHTML = "Hello World!";
status = false;
}
else
{
document.getElementById("demo").innerHTML = "This is a demonstration.";
status = true;
}
}
</script>
</body>
</html>
同样将 var 设为 global 也不会改变它。你如何检查 javascript 中的布尔值?特别是,更改在函数外部声明的变量并在该函数内更改该变量?但是,如果我将布尔值更改为整数、0 或 1 等信号。它可以工作。我想要的是类似于布尔值的行为。
我正在使用 Opera。我没有其他浏览器来测试这个。谢谢!
【问题讨论】:
-
你的第一个例子对我来说很好。
-
将其作为参数传入,而不是使用这样的全局变量。并使用
textContent而不是innerHTML。并使用外部事件处理而不是内联 javascript。 -
你的例子对我有用。你也可以像这样检查布尔值: if(boolValue) //true else //false
-
这似乎不是什么问题???你能检查第二个例子吗?检查它是否切换?让我知道它是否有效。我似乎无法继续前进,但由于你们中的一些人说这个例子对我来说很有效。
-
执行此操作:
if(status === "true")或if(status == "true")
标签: javascript