两个等于或不等于两个

时间:2018-02-07 18:39:45

标签: google-apps-script switch-statement

我正在使用5个选项:O,R,1,2,3。我的功能是尝试将O和R转换为数字等价物,同时保留数值。我尝试了这两种方式,但两种方式都没有。这是我尝试它的第一种方式。它根本不会改变任何值。

function Level2Number (Level) //changes level R and O to numbers 
{
  switch (Level)
  {
    case (Level == "R"):
      return 0
      break;

    case (Level == "O"):
      return .5
      break;

   default:
      return Level
      break;
   }
}

当我以下一种方式尝试时,它正在用O和R做我想要的但是我用字母O代替1,2和3。

function Level2Number(Level)//将等级R和O更改为数字以便进一步计算.// {   开关(等级)                                                                          {         case(Level =“R”):           返回0           打破;

    case (Level = "O"):
      return .5
      break;

    default:
      return Level
      break;
   }
}

我不知道该如何离开这里。

1 个答案:

答案 0 :(得分:1)

这不起作用,因为逻辑表达式(由括号表示)评估为'true'的'true'。你的'Level'变量不是Boolean类型(既不是'true'也不是'false'),所以你总是会遇到默认情况。

使用以下表示法

switch(Level) {

case "R":
   return 0;

default:
  return Level;

}

顺便说一句,在'return'之后放'break'完全是多余的。