处理超过2个可能的返回值?

Rob*_*cks 2 if-statement boolean coding-style

当函数返回布尔值时,您可以轻松地完成

if (task()){
   // it worked!
}else{
   // it failed.
}
Run Code Online (Sandbox Code Playgroud)

但是当它返回多个不同的值时会变得更加混乱

var status = task();
if (status == 1){
   // hmm
}else if (status == 2){
   // hmmmmm
}else if (status == 3){
   // hmmmmmmmm!
}
Run Code Online (Sandbox Code Playgroud)

..有一种更简洁的处理方式吗?

编辑:响应建议切换语句的答案,是的我知道这些.我要求的东西比那更整洁?

bob*_*mcr 5

我不知道你使用的是哪种语言(JavaScript?),但我通常会编写如下代码:

var result = task();

switch (result)
{
    case 1:
        handleStatus1();
        break;
    case 2:
        handleStatus2();
        break;
    default:
        handleEverythingElse();
        break;
}
Run Code Online (Sandbox Code Playgroud)