Javascript 石头剪刀不会打印获胜条件

Javascript 石头剪刀不会打印获胜条件,javascript,Javascript,我正在编写一个石头剪刀游戏来练习JavaScript,但是,如果玩家1获胜,它将不会显示玩家1的胜利。相反,它将打印未定义的内容。我已经经历了不同的if和switch案例,但是我仍然找不到问题 任何和所有的帮助都将不胜感激 这是我的密码: const player1=document.getElementByIdname; var-player2//如果有第二个玩家 变量选择2//保留第二个播放机或计算机的选择 var困难; 函数getUserInfo{ var diff=document.g

我正在编写一个石头剪刀游戏来练习JavaScript,但是,如果玩家1获胜,它将不会显示玩家1的胜利。相反,它将打印未定义的内容。我已经经历了不同的if和switch案例,但是我仍然找不到问题

任何和所有的帮助都将不胜感激

这是我的密码:

const player1=document.getElementByIdname; var-player2//如果有第二个玩家 变量选择2//保留第二个播放机或计算机的选择 var困难; 函数getUserInfo{ var diff=document.getElementById; 难度=差异选项[diff.selectedIndex]。值; 难度=难度; var col=document.getelementbyidcolor; var color=col.options[col.selectedIndex]。值; } 函数选择{ 转换困难{ 案例1: 容易的 打破 案例2: 地中海; 打破 案例3: 坚固的 打破 违约: 打破 } } 功能简单{ 如果玩家选择=摇滚乐{ choice2=Math.floorMath.random*4+1; 控制台。日志选择2; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=纸张; 打破 案例3: 选择2=剪刀; 打破 案例4: 选择2=剪刀; 打破 违约: 打破 } } 如果播放选择==纸张{ choice2=Math.floorMath.random*4+1; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=岩石; 打破 案例3: 选择2=纸张; 打破 案例4: 选择2=剪刀; 打破 违约: 打破 } } 如果playerChoice==剪刀{ choice2=Math.floorMath.random*4+1; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=纸张; 打破 案例3: 选择2=纸张; 打破 案例4: 选择2=剪刀; 打破 违约: 打破 } } } 功能医学{ choice2=Math.floorMath.random*3+1; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=纸张; 打破 案例3: 选择2=剪刀; 打破 违约: 打破 } } 努力工作{ 如果玩家选择=摇滚乐{ choice2=Math.floorMath.random*4+1; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=纸张; 打破 案例3: 选择2=纸张; 打破 案例4: 选择2=剪刀; 打破 违约: 打破 } } 如果播放选择==纸张{ choice2=Math.floorMath.random*4+1; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=岩石; 打破 案例3: 选择2=剪刀; 打破 案例4: 选择2=剪刀; 打破 违约: 打破 } } 如果playerChoice==剪刀{ choice2=Math.floorMath.random*4+1; 开关选择2{ 案例1: 选择2=岩石; 打破 案例2: 选择2=岩石; 打破 案例3: 选择2=纸张; 打破 案例4: 选择2=剪刀; 打破 违约: 打破 } } } 功能比较{ var last_消息; 如果播放选择===选择2{ 最后一条消息=这是一条平局!; } 如果玩家选择=摇滚乐{ 开关选择2{ 案例文件: 最后一条消息=玩家2获胜!; 打破 案例剪刀: 最后消息=玩家1获胜; } } 如果播放选择==纸张{ 开关选择2{ 案例剪刀: 最后一条消息=玩家2获胜!; 打破 凯斯洛克: 最后消息=玩家1获胜; } } 如果playerChoice==剪刀{ 开关选择2{ 凯斯洛克: 最后一条消息=玩家2获胜!; 打破 案例文件: 最后消息=玩家1获胜; } } console.loglast_消息; document.getElementByIdfinal.innerHTML=最后一条消息; } 功能清屏{ getUserInfo; 变量playerNumber=1; var x=document.getElementByIdinput; var y=document.getElementByIdgameArea; x、 style.display=无; y、 style.display=块 SetPlayerNumber; } 函数集ChoicePlayerNumber{ var read=document.getElementByIdplayerSelection; playerChoice=read.options[read.selectedIndex].value; 交换机号码{ 案例1: setPlay2; 打破 案例2: 康普选择; 比较 打破 违约: 打破 } } 函数setPlayerNumber{ document.getElementByIdcurrentPlayer.innerHTML=`Player${playerNumber}的回合`; } 游戏区{ 显示:无; } 文件 请输入您的姓名 请输入您的年龄 请选择一种颜色: 黄的 蓝色 红色 绿色 选择您的难度: 1.容易的 2.中等的 3.坚固的 岩石 纸张 剪刀 提交选择
别忘了休息一下;在比较开关中?

不要忘记一些中断;在比较开关中?

在比较函数中,您检查文字剪刀,但在easy、med、hard函数中,您将Choose2设置为剪刀。 你的密码很好,只是忘了一个字母

但这段代码可以在运行后进行一些良好的重构

例如,如果你像君士坦斯一样使用石头、布、剪刀,你将在将来避免此类问题


希望这有帮助。

在比较函数中,您检查文字剪刀,但在easy、med、hard函数中,您将Choose2设置为剪刀。 你的密码很好,只是忘了一个字母

但这段代码可以在运行后进行一些良好的重构

例如,如果你像君士坦斯一样使用石头、布、剪刀,你将在将来避免此类问题


希望这能有所帮助。

在上一个案例之后,你不需要休息。在我的智能手机上看到了这个片段,你说得太对了;在最后一个案子之后,你不需要休息。在我的智能手机上看到了那个片段,你说得太对了;你有拼写错误:case'Scissor':应该是case'Scissor':你用剪刀来选择玩家是个坏主意,但用剪刀来选择电脑是个坏主意。你有拼写错误:case'Scissor':应该是case'Scissor':你用剪刀来选择玩家是个坏主意,用剪刀来选择电脑是个坏主意。