Javascript 将if-else转换为switch语句
这是我到目前为止创建的代码,它不起作用。我只是一个初学者,我们正在创建这个“猜测你的生肖”代码,作为我们学校的工作之一 请帮助我更改代码的错误:(( 另外(如果我要求的东西太多,我很抱歉)我如何在每种情况下插入一张照片,比如每个星座都有一张照片Javascript 将if-else转换为switch语句,javascript,image,if-statement,switch-statement,photo,Javascript,Image,If Statement,Switch Statement,Photo,这是我到目前为止创建的代码,它不起作用。我只是一个初学者,我们正在创建这个“猜测你的生肖”代码,作为我们学校的工作之一 请帮助我更改代码的错误:(( 另外(如果我要求的东西太多,我很抱歉)我如何在每种情况下插入一张照片,比如每个星座都有一张照片 <html> <body> <h1> Guess your ZODIAC </h1> <script> window.confirm("HELLO"); window.confirm
<html>
<body>
<h1> Guess your ZODIAC </h1>
<script>
window.confirm("HELLO");
window.confirm("I will try to determine your ZODIAC SIGN via this html. Cooperate with me :) ?");
window.confirm("oki, lego");
var zodiacmonth = prompt("Please insert your birthMONTH; if your birthday is on January 11, insert January");
var zodiacday = prompt("Please insert birthDAY; if your birthday is on January 11, insert 11")
switch (sign) {
case ((zodiacmonth == "February" && zodiacday >= 19) || (zodiacmonth == "March" && zodiacday <=20)):
window.confirm ("Your zodiac sign is PISCES");
break;
case ((zodiacmonth == "March" && zodiacday >= 21) || (zodiacmonth == "April" && zodiacday <=19)):
window.confirm ("Your zodiac sign is ARIES");
break;
case ((zodiacmonth == "April" && zodiacday >= 20) || (zodiacmonth == "May" && zodiacday <=20)):
window.confirm ("Your zodiac sign is TAURUS");
break;
case zodiacmonth == "May" && zodiacday >= 21 || zodiacmonth == "June" && zodiacday <=20 :
window.confirm ("Your zodiac sign is GEMINI");
break;
case zodiacmonth == "June" && zodiacday >= 21 || zodiacmonth == "July" && zodiacday <=22:
window.confirm ("Your zodiac sign is CANCER");
break;
case zodiacmonth == "July" && zodiacday >= 23 || zodiacmonth == "August" && zodiacday <=22 :
window.confirm ("Your zodiac sign is LEO");
break;
case zodiacmonth == "August" && zodiacday >= 23 || zodiacmonth == "September" && zodiacday <=22:
window.confirm ("Your zodiac sign is VIRGO");
break;
case zodiacmonth == "September" && zodiacday >= 23 || zodiacmonth == "October" && zodiacday <=22:
window.confirm ("Your zodiac sign is LIBRA");
break;
case zodiacmonth == "October" && zodiacday >= 23 || zodiacmonth == "November" && zodiacday <=21:
window.confirm ("Your zodiac sign is SCORPIO");
break;
case zodiacmonth == "November" && zodiacday >= 22 || zodiacmonth == "December" && zodiacday <=21:
window.confirm ("Your zodiac sign is SAGITTARIUS");
case zodiacmonth == "December" && zodiacday >= 22 || zodiacmonth == "January" && zodiacday <=19:
window.confirm ("Your zodiac sign is CAPRICORN");
break;
case zodiacmonth == "January" && zodiacday >= 20 || zodiacmonth == "February" && zodiacday <=18:
window.confirm ("Your zodiac sign is AQUARIUS, like mine :))");
break;
}
</script>
</body>
</html>
猜猜你的生肖
窗口。确认(“你好”);
window.confirm(“我将尝试通过此html确定您的星座。请与我合作:)?”;
确认(“oki,乐高”);
var zodiacmount=提示(“请插入您的生日;如果您的生日是1月11日,请插入1月”);
var zodiacday=提示(“请插入生日;如果您的生日是1月11日,请插入11”)
道岔(标志){
(十二生肖月=“二月”和十二生肖日>=19)| |(十二生肖月=“三月”和十二生肖日=21)| |(十二生肖月=“四月”和十二生肖日=20)| |(十二生肖月=“五月”和十二生肖日=21 | | | |十二生肖月=“六月”和十二生肖日=21 | | | |十二生肖月=“七月”和十二生肖日=23 |生肖月=“八月”和“九月”十二生肖日=23 | | | | |十二生肖月=23 | | |十二生肖月=22 | | | | | |十二生肖月=20 | | | |十二生肖月=2 | | | | | | | | |十二生肖月=22 | | | | | | | | | | | |十二生
switch/case
块可用于检查单个变量的不同值
您的条件包括多个变量,因此这里甚至不可能使用开关/case
块
也就是说,如果您能够更好地构建数据,则可以优化此代码:
var十二生肖=[
{符号:“双鱼座”,蒙塔:“二月”,蒙塔:“三月”,大雅:19,大雅:20},
{符号:“白羊座”,蒙塔:“三月”,蒙塔:“四月”,大雅:21,大雅:19},
{符号:“金牛座”,蒙塔:“四月”,蒙塔:“五月”,大雅:20,大雅:20},
//等
];
var zodiacmount=提示(“请插入您的生日;如果您的生日是1月11日,请插入1月”);
var zodiacday=提示(“请插入生日;如果您的生日是1月11日,请插入11”)
var zodiac=zodiacs.filter(函数(z){
返回十二生肖月份==z.monthA&&zodiacday>=z.dayA||
zodiacmonth==z.monthB&&zodiacday您无法与switch…case
语句进行比较。如果stryswitch(true){
则必须继续使用,因为符号没有在任何地方声明,您认为它是什么?我建议您继续使用()
在case语句中也一直如此,不知道为什么你会在金牛座之后停下来