我已经为我的测试网站制作了Javascript随机标语生成器,并且它以某种方式被窃听,我真的不知道为什么。
<body onload="rndqu()">
<div id="head"> <a href="index.html">Mira's place<a><br>
<h2>“<span id="quote"></span>”</h2>
</div>
</body>
这是Javascript
var qu;
var slogan;
function rndqu(n){
var random = function(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
};
qu = random(1, 7);
switch(qu){
case 1:
slogan = "This text is random generated. Woohooo... :P";
break;
case 2:
slogan = "Mira is creating huge game named Rock Paper.";
break;
case 3:
slogan = "I will add discussion on my site!";
break;
case 4:
slogan = "Everyone loves Koding.";
return;
case 5:
slogan = "Mira is potato. :(";
return;
case 6:
slogan = "I'm learning Javascript, this slogan is made in Javascript!";
return;
case 7:
slogan = "There is actually over 9000 slogans!";
return;
default:
slogan = "Is it possible to get default?";
}
document.getElementById("quote").innerHTML = slogan;
}
有时它有效,有时它不起作用。我尝试了谷歌浏览器及其控制台,并使用此命令rndqu(); console.log(qu);
进行调试。但我失败了。我没有在代码中看到任何错误。
当:
qu = 1
口号是正确的。
qu = 2
口号是正确的。
qu = 3
口号是正确的。
qu = 4
口号不会改变。
qu = 5
口号不会改变。
qu = 6
口号不会改变。
qu = 7
口号不会改变。
这对我来说是完全不合理的原因。
编辑:我是BLIND DUMB。我是个笨蛋!!!
答案 0 :(得分:7)
因为在不起作用的情况下,您使用的是return;
而不是break;
,因此您将退出该功能,而不会到达存储结果的部分。
答案 1 :(得分:2)
自案例编号4以来,您已返回而不是休息 易于修复: - )
答案 2 :(得分:2)
在案例4,5,6和7中,您return;
代替break;