我刚开始使用Javascript,很抱歉,如果这是一个简单的问题,无法在谷歌或此处找到答案。
我有一个变量,每次按下一个按钮后,它会向该函数添加一个数字,并运行一个函数,检查var数是否在某个数字和另一个数字之间,如果是,则写入一些内容。
问题是,我现在有大约4个if语句也重叠,但是因为它们只是语句,它只是检查第一个是,如果只打印出那个。
如果我想打印所有真实的陈述怎么办?有没有办法做到这一点?
这是代码
<!DOCTYPE html>
<html>
<body>
<script>
var check = 0;
function numberchecker() {
document.getElementById("container").innerHTML = "Hello world";
if ( check > 1 && check < 7 ) { document.getElementById("container").innerHTML = "Check 1";};
if ( check > 4 && check < 8 ) { document.getElementById("container").innerHTML = "Check 2"; } ;
if ( check > 6 && check < 10 ) { document.getElementById("container").innerHTML = "Check 3";};
console.log(check);
} ;
function addone() {check = check + 1; numberchecker()} ;
</script>
<p id="container"></p>
<button onclick="addone()">Add One</button>
</body>
</html>
答案 0 :(得分:0)
我认为你的问题是,你覆盖了前任务document.getElementById("container").innerHTML = ...
的结果。你只得到最后一个支票。
(小提示:block语句的大括号在结束括号后面不需要semicolon。)
var check = 0;
function numberchecker() {
document.getElementById("container").innerHTML = "check: "+check+"<br>Hello world";
if (check > 1 && check < 7) {
document.getElementById("container").innerHTML += "<br>Check 1";
}
if (check > 4 && check < 8) {
document.getElementById("container").innerHTML += "<br>Check 2";
}
if (check > 6 && check < 10) {
document.getElementById("container").innerHTML += "<br>Check 3";
}
console.log(check);
}
function addone() {
check = check + 1; numberchecker()
}
&#13;
<p id="container"></p>
<button onclick="addone()">Add One</button>
&#13;
答案 1 :(得分:0)
例如,当if语句的计算结果为true时,您可以使用数组push()
方法将文本(“Check 1”或“Check 2”等)添加到数组中。
当所有if语句都完成检查时,你可以打印数组的内容。
如果结果数组中没有项目,您将看到默认文本“Hello world”。
如果结果数组中有元素,那么可以使用数组join()
方法将结果数组中的元素连接成一个字符串。
例如:
var check = 0;
function numberchecker() {
var result = [];
document.getElementById("container").innerHTML = "Hello world";
if ( check > 1 && check < 7 ) { result.push("Check 1");}
if ( check > 4 && check < 8 ) { result.push("Check 2");}
if ( check > 6 && check < 10 ) { result.push("Check 3");}
if (result.length !== 0) {
document.getElementById("container").innerHTML = "True statements: " + result.join();
}
console.log(check);
}
function addone() {check = check + 1; numberchecker()}
<button onclick="addone()">Add One</button>
<p id="container"></p>