【问题标题】:Javascript -Switch Ranges on Floating Point Numbers [duplicate]Javascript - 浮点数的切换范围[重复]
【发布时间】:2021-04-04 18:40:22
【问题描述】:

我是一名 Swift 开发人员,我在 average 上运行以下 switch 语句,它是一个 Double。我在 iOS 端使用这个。

// example average = 1.27908341230...

switch average {

case 1.0..<1.5:
    //doSomething
case 0.5..<1.0:
    //doSomething
case 0.0..<0.5:
    //doSomething
default:            
    break
}

现在我正在使用 Cloud Functions 中的代码。这是在 Javascript 中执行此操作的正确方法吗?

// example average = 1.27908341230...

switch (average) {

case 1.0 < 1.5:
    //doSomething
    break;
case 0.5 < 1.0:
    //doSomething
    break;
case 0.0 < 0.5:
    //doSomething
    break;
default:            
    break;
}

【问题讨论】:

    标签: javascript floating-point switch-statement range


    【解决方案1】:

    不要使用switch,使用if/else

    if (average > 1 && average <= 1.5) {
      // do something
    } else if (average > 0.5 && average <= 1) {
      // do something
    } else if (average > 0 && average <= 0.5) {
      // do something
    }
    

    【讨论】:

    • 感谢您的回答。我可以在 12 分钟内接受答案。为什么我不应该使用switch
    • switch (1) 对你在这里尝试的东西不起作用(除非你使用switch(true),这很奇怪和丑陋)(2)switch 很冗长(3 ) switch 容易出错(人们经常忘记 break (4) 现代变量声明语法不能在 case 中使用,除非你把它变成一个块。if/else 就是这么多更好
    • 好的,感谢您的澄清。我会尽快接受你的回答。干杯!!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-10
    相关资源
    最近更新 更多