swich...case加范围条件
这就可以了,避免了写if…怎么都只会走default打印的。
·
开始的写法:
var money = parseFloat(prompt("我有多少资产?(万)"))
switch (money) {
case (money >= 500):
console.log('我真是超级富豪');
break;
case (money >= 300 && money < 500):
console.log('我是个中产阶级');
break;
case (money >= 100 && money < 300):
console.log('我可以努力变得更有钱些');
break;
case (money >= 50 && money < 100):
console.log('我要努力变成百万富豪');
break;
case (money >= 30 && money <50):
console.log('算了,算了,好好活着吧');
break;
default:
console.log("人嘛,重要的就是开心啦");
}
怎么都只会走default打印的
通过找问题, switch判断式为布尔类型 ,switch的条件为true。往里传 true的值,则case后面的表达式的值为true就进入分支,直到执行到break或switch结束。
后来的写法:
var money = parseFloat(prompt("我有多少资产?(万)"))
switch (true) {
case (money >= 500):
console.log('我真是超级富豪');
break;
case (money >= 300 && money < 500):
console.log('我是个中产阶级');
break;
case (money >= 100 && money < 300):
console.log('我可以努力变得更有钱些');
break;
case (money >= 50 && money < 100):
console.log('我要努力变成百万富豪');
break;
case (money >= 30 && money <50):
console.log('算了,算了,好好活着吧');
break;
default:
console.log("人嘛,重要的就是开心啦");
}
这就可以了,避免了写if…else if …else的复杂性。
更多推荐
已为社区贡献2条内容
所有评论(0)