Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript的局限性还是简单的错误?_Javascript_While Loop - Fatal编程技术网

Javascript的局限性还是简单的错误?

Javascript的局限性还是简单的错误?,javascript,while-loop,Javascript,While Loop,在最近以ZORK的风格重新创建游戏时,我遇到了一个问题,不知道是什么导致了它,也不知道如何处理它 我在提示框上使用了while循环,将用户输入与switch()大小写进行比较,然后返回响应。我已经在上面构建了一段时间了,现在有超过600行的JavaScript 在为游戏的另一个元素添加了更多的行之后,我注意到脚本突然在使用它的过程中退出(意味着提示没有再次显示)。这在以前的版本之前从未发生过,并且我对错误进行了三次检查,但是找不到任何。我查看了某些浏览器上的JavaScript限制,它说5000

在最近以ZORK的风格重新创建游戏时,我遇到了一个问题,不知道是什么导致了它,也不知道如何处理它

我在提示框上使用了while循环,将用户输入与switch()大小写进行比较,然后返回响应。我已经在上面构建了一段时间了,现在有超过600行的JavaScript

在为游戏的另一个元素添加了更多的行之后,我注意到脚本突然在使用它的过程中退出(意味着提示没有再次显示)。这在以前的版本之前从未发生过,并且我对错误进行了三次检查,但是找不到任何。我查看了某些浏览器上的JavaScript限制,它说5000000是允许的最大语句数。我不认为只有600行,甚至循环,在使用一两分钟后就可以达到这么多

所以我被难住了。我不知道是什么导致了这个问题,也不知道如何解决它。我通过一个js迷你程序运行了它,得到了与以前相同的结果

//FNIJ V0.9
函数officeintro(){
警惕(“你坐在办公室里。有两扇门,一扇在左边,一扇在右边。它们都是开着的。”);
}
函数简介(){
警报(“欢迎使用Javascript学习五夜!”);
警报('此游戏是由Scott Cawthon创建的在Freddy's的五个晚上的javascript再创作,受游戏ZORK的启发。\n\n请记住不要单击“阻止此页面创建其他对话框”。这将退出游戏');
var gameconf=confirm('您熟悉Freddy's的五晚酒店吗?\n\n单击“确定”表示是,单击“取消”表示否');
开关(gameconf){
案例错误:
警觉的(“以下是Steam的描述:\n\n欢迎来到弗雷迪·法茨比比萨饼店,那里的孩子和父母都来娱乐和吃饭!最吸引人的当然是弗雷迪·法茨比,还有他的两个朋友。他们是动画电子机器人,编程是为了取悦人群!机器人的行为已经改变了。”然而,在晚上,你会有点不可预测,雇用你做保安比找修理工便宜得多。”;
警报(“在你的小办公室里,你必须仔细观察安全摄像头。你每天晚上的用电量非常有限(你知道,公司预算削减了).这意味着当你晚上没电的时候-没有安全门,也没有电灯!如果有什么不对劲-也就是说,如果弗雷迪熊或他的朋友不在他们合适的位置,你必须在监视器上找到他们,并在需要时保护自己!);
警报(“在弗雷迪的五个晚上最好通过观看游戏视频或玩实际游戏来解释。”);
提醒('我建议观看Pewdiepie或Markiplier(\my favorite)\n玩游戏。请记住,此游戏基于第一场游戏。');
警报('官方游戏可以从“gg.gg/getfnaf”下载,不带引号');
打破
大小写正确:
打破
}
var ctrlconf=confirm('您想听到控制吗?\n\n单击“确定”表示“是”,单击“取消”表示“否”);
开关(ctrlconf){
大小写正确:
警报('将给您一个提示框,您可以在其中键入命令');
警报(‘大多数命令都是直观的,如‘打开凸轮’、‘关闭左门’、‘检查左灯’等);
警报('某些命令也可以缩写。例如,\'Close cam\'可以缩写为'CC\');
警报('你们都准备好了!让我们开始吧!');
officeintro();
打破
案例错误:
警报('你们都准备好了!让我们开始吧!');
officeintro();
打破
}
}
函数游戏性(){
var-stS=1;
var-stM=1;
var stH=1;
var时间=12;
var c=“Chica”;
var f=“Freddy”;
var b=“邦妮”;
var cf=“奇卡和弗雷迪”;
var fb=“邦妮和弗雷迪”;
var cb=“Chica和Freddy”;
var cbf=“邦妮、奇卡和弗雷迪”;
var n=“无”;
var showtage=cbf;
var backstage=n;
var supplycloset=n;
var diningarea=n;
var pirate=“Foxy”;
var-whall=n;
var-whallcorner=n;
var-rr=n;
var=n;
var-ehall=n;
var-ehallcorner=n;
var lastcamsee=showtage;
var-lllight=n;
var rlight=n;
var goldfred=假;
var leftdoor=“打开”;
var rightdoor=“打开”;
var cam=“关闭”;
var lastcam=“showtage”;
var look=“您的办公室”;
var=true;
var-night=1;
var pRuse=1;
无功功率=99;
var pwrrate=0;
var disppwr=99;
函数initTime(){
var now=新日期();
stS=now.getSeconds();
stM=now.getMinutes();
stH=now.getHours();
}
函数computeTime(){
var now=新日期();
var reS=now.getSeconds();
var reM=now.getMinutes();
var reH=now.getHours();
var-elapS=reS-stS;
var elapM=reM-stM;
var elapH=reH-stH;
如果(elapM<0){
雷姆=雷姆+60;
elapM=reM-stM;
}
if(elapS<0){
reS=reS+60;
elapS=reS-stS;
}
var finalH=elapH*3600;
var finalM=elapM*60;
var期末考试=期末考试+期末考试+期末考试;
如果(总决赛>86和总决赛<172){
时间=1;
}
如果(总决赛>172和总决赛<258){
时间=2;
}
如果(总决赛>258和总决赛<344){
时间=3;
}
如果(总决赛>344和总决赛<430){
时间=4;
}
如果(总决赛>430和总决赛<516){
时间=5;
}
如果(总决赛>516){
时间=6;
警报(上午5点);
Uncaught ReferenceError: reppS is not defined
repS = reppS + 60;
repS = repS + 60;