繁体   English   中英

如何为 Javascript 中的三元运算符返回真或假?

[英]How do I return true or false for ternary operator in Javascript?

我正在尝试将下面的代码转换为带有三元运算符的速记版本

     if (sum % 10 === 0) {
        return true;
     } else {
        return false;
      }

它按原样工作正常,但是当我将其更改为

sum % 10 === 0 ? return true : return false; 

我收到语法错误,当我将其更改为

sum % 10 === 0 ? true : false; 

它没有按预期工作。

如果有人能告诉我发生了什么,我将不胜感激。

表达式(sum % 10 === 0)是 boolean 本身,所以只需返回它:

return sum % 10 === 0

你可以简单地做:

return !(sum % 10)

如果(sum % 10) === 0 ,则!(sum % 10)将返回true ,否则返回false

你尝试了什么:

sum % 10 === 0 ? return true : return false; 

这不起作用,因为return是一个语句而不是表达式。 不能在表达式内部使用语句。

sum % 10 === 0 ? true : false; 

这可行,但没有return语句,它只是一个不使用它的表达式。

最后,您需要返回条件(三元)运算符?:的结果,例如

return sum % 10 === 0 ? true : false; 

对于更短的方法,您可以返回不带三元的比较结果。

return sum % 10 === 0;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM