是&lt;布尔表达式&gt;&amp;&amp;statement() 和 if(<boolean expression>) statement() 一样吗? [英] Is &lt;boolean expression&gt; &amp;&amp; statement() the same as if(&lt;boolean expression&gt;) statement()?

查看:16
本文介绍了是&lt;布尔表达式&gt;&amp;&amp;statement() 和 if(<boolean expression>) statement() 一样吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

两者是否相同?

假设你有:

var x = true;

然后你有其中之一:

x && doSomething();

if(x) doSomething();

这两种语法之间有什么区别吗?我是不是偶然发现了一点糖?

Is there any differene whatsoever between the two syntaxes? Did I stumble across a nice bit of sugar?

推荐答案

严格来说,它们会产生相同的结果,但如果将前一种情况用作其他情况的条件,则会得到不同的结果.这是因为在 x && 的情况下doSomething(), doSomething() 将返回一个值来表示它的成功.

Strictly speaking, they will produce the same results, but if you use the former case as a condition for something else, you will get dissimilar results. This is because in the case of x && doSomething(), doSomething() will return a value to signify its success.

这篇关于是&lt;布尔表达式&gt;&amp;&amp;statement() 和 if(<boolean expression>) statement() 一样吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆