速记如果? return:null

时间:2014-05-27 13:45:25

标签: javascript refactoring ternary-operator shorthand shorthand-if

我想实现这个目标:

 if (full) {
      return
    }
    else{
      // nuthin
    }

但更短,如:

full ? return : null;

但那不起作用..

我能做到:

if (full) { return }

但我更喜欢三元

我希望像full ? return这样的东西可以工作......

我基本上想要在值为true时突破当前函数... 有没有更好的/工作的短缺?

3 个答案:

答案 0 :(得分:4)

三元的参数是表达式 语句

return;是一个陈述,所以你提议的内容在语法上无效。

您的if语句与您所做的一样简洁:特别是如果删除不必要的大括号。

答案 1 :(得分:1)

所以这个时间很短:

 if full return

答案 2 :(得分:0)

解释相关

如果您只想让测试为true,则可以使用逻辑AND运算符&&,如下所示:

index.js

(function(){
    var full=true;
    full&&alert('Glass is full');
})();

请注意,在此示例中,var full=false;只会发生任何事情。

源代码

JSFiddle source-code.

Codepen source-code

Pastebin source-files