为了账号安全,请及时绑定邮箱和手机立即绑定

表达式在switch case语句中

表达式在switch case语句中

HUWWW 2019-08-19 16:28:48
表达式在switch case语句中我正在尝试创建一个switch语句但我似乎无法使用得到评估的表达式(而不是设置字符串/整数)。我可以使用if语句轻松完成此操作,但希望案例更快。我正在尝试以下方法function reward(amount) {     var $reward = $("#reward");     switch (amount) {         case (amount >= 7500 && amount < 10000):             $reward.text("Play Station 3");             break;         case (amount >= 10000 && amount < 15000):             $reward.text("XBOX 360");             break;         case (amount >= 15000):             $reward.text("iMac");             break;         default:             $reward.text("No reward");             break;     }}我错过了一些明显的东西,或者这是不可能的?谷歌在这种情况下并不友善。
查看完整描述

3 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

你可以随时做

switch (true) {
  case (amount >= 7500 && amount < 10000):
    //code
    break;
  case (amount >= 10000 && amount < 15000):
    //code
    break;

  //etc...

它的工作原理是因为它true是一个常量,所以将执行第一个case语句下的代码,其表达式的计算结果为true。

我觉得这有点“棘手”,但我觉得使用它并没有错。一个简单的if/else陈述可能会更简洁,你不必担心意外跌倒。但无论如何它仍然存在。


查看完整回答
反对 回复 2019-08-19
  • 3 回答
  • 0 关注
  • 744 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信