Javascript IF语句未按预期返回
我试图编写一个简单的javascript代码来生成一个随机门(door1或door2,如果生成了door1,就会出现短语“youwin” 现在,尽管生成了door1或door2,输出仍然是“youlose”。我做错了什么Javascript IF语句未按预期返回,javascript,jquery,Javascript,Jquery,我试图编写一个简单的javascript代码来生成一个随机门(door1或door2,如果生成了door1,就会出现短语“youwin” 现在,尽管生成了door1或door2,输出仍然是“youlose”。我做错了什么 let doors=[“door1”、“door2”] 函数selectDoor(){ const randomDoor=doors[Math.round(Math.random())] 控制台日志(随机门) } 如果(选择门()=“门1”){ console.log('yo
let doors=[“door1”、“door2”]
函数selectDoor(){
const randomDoor=doors[Math.round(Math.random())]
控制台日志(随机门)
}
如果(选择门()=“门1”){
console.log('youwin')
}否则{
console.log('你输了')
}
您没有从选择门返回随机门
function selectDoor(){
const randomDoor = doors[Math.round(Math.random())]
console.log(randomDoor)
return randomDoor
}
不返回任何内容等同于返回未定义的
,当与比较运算符一起使用时,这是一个有效的假
。您没有从选择门返回随机门
function selectDoor(){
const randomDoor = doors[Math.round(Math.random())]
console.log(randomDoor)
return randomDoor
}
不返回任何内容等同于返回未定义的
,当与比较运算符一起使用时,它实际上是一个假
。您应该在函数中返回值
let doors = ["door1", "door2"]
function selectDoor(){
const randomDoor = doors[Math.round(Math.random())]
console.log(randomDoor);
return randomDoor;
}
if(selectDoor() === "door1"){
console.log('you win')
} else {
console.log('you lose')
}
您应该在函数中返回值
let doors = ["door1", "door2"]
function selectDoor(){
const randomDoor = doors[Math.round(Math.random())]
console.log(randomDoor);
return randomDoor;
}
if(selectDoor() === "door1"){
console.log('you win')
} else {
console.log('you lose')
}
selectDoor()
没有返回任何内容,因此它始终为false。不要忘记从doors
Math.round(Math.random())中正确选择随机元素
只会给你一个0或1,这就是为什么在你只有两扇门的情况下它会工作的原因。如果你添加了另一扇门,你会看到问题。你可以使用门[Math.floor(Math.random()*doors.length)]来解决这个问题。
选择门()
没有返回任何内容,因此它始终为false。不要忘记从门中正确选择一个随机元素。round(Math.random())
只会给你一个0或1,这就是为什么在你只有两扇门的情况下它会起作用。如果你添加了另一扇门,你会看到问题。你可以使用门解决这个问题[Math.floor(Math.random()*doors.length)]
成功了,我错过了回报。谢谢!完美答案!成功了,我错过了回报。谢谢!完美答案!