如何停止Javascript执行

如何停止Javascript执行,javascript,Javascript,所以我正在用JavaScript编写一个基本的“石头剪刀”游戏。当玩家(或计算机)获胜时,游戏会询问玩家是否想再次玩。当玩家说“是”时,游戏照常开始。然而,当玩家说“不”时,整个脚本将重新开始。我想设置它,这样当玩家说不,脚本停止,玩家可以正常浏览网页。我尝试过在stackoverflow中搜索,但是当我尝试任何建议时,脚本根本不会启动。有什么帮助吗 编辑:说清楚,我只在谷歌浏览器上测试过这个 代码: ---代码开头--- var mywins=0 var compwins=0 变量x='y'

所以我正在用JavaScript编写一个基本的“石头剪刀”游戏。当玩家(或计算机)获胜时,游戏会询问玩家是否想再次玩。当玩家说“是”时,游戏照常开始。然而,当玩家说“不”时,整个脚本将重新开始。我想设置它,这样当玩家说不,脚本停止,玩家可以正常浏览网页。我尝试过在stackoverflow中搜索,但是当我尝试任何建议时,脚本根本不会启动。有什么帮助吗

编辑:说清楚,我只在谷歌浏览器上测试过这个

代码: ---代码开头---

var mywins=0
var compwins=0
变量x='y'
函数简介(){
var name=prompt('你叫什么名字?');
警报(‘你好,’+name+’!’);
警惕(‘我想和你玩石头、布、剪刀,’+name+’);
提醒(“让我们开始吧。注意:在Google Chrome中单击“阻止此网站创建其他对话”。其他浏览器,我不知道。”);
警告(“键入“s”表示剪刀,键入“r”表示石头,键入“p”表示纸!字母必须是小写。键入任何其他字符都将显示当前分数。您的分数在前,然后是我的分数。”);
}
函数MainLoop(){
var mywins=0
var compwins=0
而(compwins<3 | | mywins<3){
var choice=prompt('轮到你了!');
var compchoice=Math.floor(Math.random()*3);
if(choice='r'&&compchoice==0){
警惕(“打成平局!”);
}else if(choice='r'&&compchoice==1){
警惕(“我赢了!”);
compwins=compwins+1
}else if(choice='r'&&compchoice==2){
警惕(“你赢了!”);
mywins=mywins+1
}else if(choice='p'&&compchoice==0){
警惕(“你赢了!”);
mywins=mywins+1
}else if(choice='p'&&compchoice==1){
警惕(“该死的!打领带!”);
}else if(choice='p'&&compchoice==2){
警惕(‘哈哈!我拣了剪刀!’);
compwins=compwins+1
}else if(choice='s'&&compchoice==0){
警惕(‘哦!太伤心了!我赢了那一轮!’
compwins=compwins+1
}else if(choice='s'&&compchoice==1){
警惕(“啊,我猜你赢了那一轮…);
mywins=mywins+1
}else if(choice='s'&&compchoice==2){
警惕(打成平局)
}
警报(mywins+'-'+compwins);
如果(mywins==3 | | compwins==3){
打破
}
}
}
函数DisplayWin(){
如果(compwins==3){
警惕(“就是这样!三场胜利!我赢了比赛!哈哈!”);
}否则如果(mywins==3){
警惕(“该死!你赢了!打赌你连赢两次都赢不了我!”;
}
}
函数playreach(){
var x=提示(“再次播放?(y)或(n)”)
}
如果(x==n)返回;
---代码结束---


if(x==n)返回部分是我从stackoverflow尝试的。我是否正确使用了它?

您只需在
MainLoop()
函数的末尾添加一个提示,如果用户不想继续这样做,则只需将
循环中断开

    if (!confirm("Continue to play?")) {
        break;
    }
或者,在整个功能的上下文中:

function MainLoop() {
    var mywins = 0
    var compwins = 0
    while (compwins < 3 || mywins < 3) {
        var choice = prompt('Your turn!');
        var compchoice = Math.floor(Math.random() * 3);
        if (choice == 'r' && compchoice == 0) {
            alert("That's a tie!");
        } else if (choice == 'r' && compchoice == 1) {
            alert('I won!');
            compwins = compwins + 1
        } else if (choice == 'r' && compchoice == 2) {
            alert('You won!');
            mywins = mywins + 1
        } else if (choice == 'p' && compchoice == 0) {
            alert('You won!');
            mywins = mywins + 1
        } else if (choice == 'p' && compchoice == 1) {
            alert('Darn! A tie!');
        } else if (choice == 'p' && compchoice == 2) {
            alert('Haha! I picked scissors!');
            compwins = compwins + 1
        } else if (choice == 's' && compchoice == 0) {
            alert('Oh! So sad! I won that round!')
            compwins = compwins + 1
        } else if (choice == 's' && compchoice == 1) {
            alert('Ugh. I guess you won that round...');
            mywins = mywins + 1
        } else if (choice == 's' && compchoice == 2) {
            alert('A tie!')
        }
        alert(mywins + '-' + compwins);
        if (mywins == 3 || compwins == 3) {
            break;
        }
        if (!confirm("Continue to play?")) {
            break;
        }
    }
}
函数MainLoop(){
var mywins=0
var compwins=0
而(compwins<3 | | mywins<3){
var choice=prompt('轮到你了!');
var compchoice=Math.floor(Math.random()*3);
if(choice='r'&&compchoice==0){
警惕(“打成平局!”);
}else if(choice='r'&&compchoice==1){
警惕(“我赢了!”);
compwins=compwins+1
}else if(choice='r'&&compchoice==2){
警惕(“你赢了!”);
mywins=mywins+1
}else if(choice='p'&&compchoice==0){
警惕(“你赢了!”);
mywins=mywins+1
}else if(choice='p'&&compchoice==1){
警惕(“该死的!打领带!”);
}else if(choice='p'&&compchoice==2){
警惕(‘哈哈!我拣了剪刀!’);
compwins=compwins+1
}else if(choice='s'&&compchoice==0){
警惕(‘哦!太伤心了!我赢了那一轮!’
compwins=compwins+1
}else if(choice='s'&&compchoice==1){
警惕(“啊,我猜你赢了那一轮…);
mywins=mywins+1
}else if(choice='s'&&compchoice==2){
警惕(打成平局)
}
警报(mywins+'-'+compwins);
如果(mywins==3 | | compwins==3){
打破
}
如果(!确认(“继续播放?”){
打破
}
}
}

ok,但您需要向我们显示javascriptreturn false;或返回;我会把这个问题提出来的@对于这样的一般性问题,AmmarcEthere并不是一般性的答案。唯一可能的答案是如何更改代码以执行所需操作。那么,您是否希望我们告诉您如何在不向我们显示代码的情况下更改代码?请想一想人们可能需要什么样的信息才能帮助你并将其包含在你的问题中。@jfriend00只需将代码放入问题中。@nhanley19-我在
MainLoop()
中向你展示了它的确切位置,所以我不明白你还问了什么。我试着将它放入我的.js文件中,但它不会运行脚本。我想我问的问题不对!
function MainLoop() {
    var mywins = 0
    var compwins = 0
    while (compwins < 3 || mywins < 3) {
        var choice = prompt('Your turn!');
        var compchoice = Math.floor(Math.random() * 3);
        if (choice == 'r' && compchoice == 0) {
            alert("That's a tie!");
        } else if (choice == 'r' && compchoice == 1) {
            alert('I won!');
            compwins = compwins + 1
        } else if (choice == 'r' && compchoice == 2) {
            alert('You won!');
            mywins = mywins + 1
        } else if (choice == 'p' && compchoice == 0) {
            alert('You won!');
            mywins = mywins + 1
        } else if (choice == 'p' && compchoice == 1) {
            alert('Darn! A tie!');
        } else if (choice == 'p' && compchoice == 2) {
            alert('Haha! I picked scissors!');
            compwins = compwins + 1
        } else if (choice == 's' && compchoice == 0) {
            alert('Oh! So sad! I won that round!')
            compwins = compwins + 1
        } else if (choice == 's' && compchoice == 1) {
            alert('Ugh. I guess you won that round...');
            mywins = mywins + 1
        } else if (choice == 's' && compchoice == 2) {
            alert('A tie!')
        }
        alert(mywins + '-' + compwins);
        if (mywins == 3 || compwins == 3) {
            break;
        }
        if (!confirm("Continue to play?")) {
            break;
        }
    }
}