二进制逻辑运算符在Javascript中表示一个条件
Binary logical operator to express a conditional in Javascript
我使用三元操作符,但通常不希望使用else子句进行检查。我想知道是否有什么简单的方法可以省略这个。
我发现
a ? b : {}
作为if (a) {b}
的替换,节省2个字符,但不
a ? b :
我想这是有意义的,它是一个三元运算符。
我唯一的想法是那些空花括号有点不美观,有没有其他方法来指定一个空白的:
语句?
或者,是否存在二进制?
操作符?我在规范中翻了一遍,但看不出我如何使用二进制逻辑运算符,我猜这就是if
的用途。
是否有某种方法可以使用二进制逻辑运算符来表示{}的条件或简写?我知道这可能是三个字符的懒惰程度,但我只是好奇是否有人有任何技巧分享。
你的代码有几个问题:
-
不要这样做;这是令人困惑的
-
{}
不是空块;它是对象字面量。""
或0
或42
也有同样的效果。 -
&&
操作符将按您的要求执行。
在三元? :
表达式中,子节不是语句,它们是表达式。我从未见过使用{}
;这是可以的,但实际上任何非空表达式都可以工作:
a ? b : 0
a ? b : false
a ? b : null
a ? b : 2 + 2
对于像测试一个简单条件这样的简单逻辑来说,这真的不是最清晰的编码方式。在我看来,if
语句更清晰,并且您不必为了满足语法要求而选择一个无意义的表达式。
这也是一种习惯用法,尽管(同样是观点)不是很清楚:
a && b;
这模仿了一些语言中存在的一种叫做"守卫"的结构。
相关文章:
- Javascript'数组'和'循环'如何“;变量[i]”;是一个条件
- 向以下代码添加不接受“0”的另一个条件
- 如何生成一个条件提示,该提示将继续提示,直到满足条件为止
- 函数的javascript - 如何在for循环中包含另一个条件
- JavaScript - 是否可以在不使用OR的情况下在一个条件下检查多个工作日
- 一个开关条件不起作用,而另一个条件不起作用
- 如何向此 JavaScript 添加另一个条件
- 为 创建一个条件,以便在事件发生 jQuery 之前具有值
- 如何创建一个条件来查看是否创建了具有特定值的 href
- 如何确保元素不可见并继续量角器中的下一个条件
- AngularJS - 如何添加一个条件来引导模态目标
- 有没有一种更简洁的方法来设置一个条件语句,以便为变量的任意值集执行
- 我需要添加一个条件语句来将css高度链接到下拉选择(jQuery)
- 我试着写一个条件语句,它将检查我的页面标题,看看是否找到某些单词
- JSHint -期望一个条件表达式,却看到了一个赋值
- AngularJS ng-show一个条件和多个元素
- 实现递归ajax调用,并在一个条件下停止它
- 如何循环通过我的html和注入文本,如果一个条件是满足
- 在Javascript中,我可以在一个条件中两次使用==吗?
- 如何用JS创建一个条件来检测目录名及其url