【发布时间】:2015-01-20 23:05:09
【问题描述】:
在 if 条件下,什么时候使用双重否定才有意义?我多次发现这种模式:
JS
if(!!children.length) { ...}
【问题讨论】:
-
!!从表达式中生成布尔值,但在if中是无用的。 -
在 IF 中使用布尔转换是没有意义的,IF 会为你做这些
标签: javascript
在 if 条件下,什么时候使用双重否定才有意义?我多次发现这种模式:
JS
if(!!children.length) { ...}
【问题讨论】:
!! 从表达式中生成布尔值,但在 if 中是无用的。
标签: javascript
将普通表达式转换为布尔值是一种常用方法。在 if 语句中它实际上没有任何意义,因为它无论如何都会将给定的表达式评估为布尔值,但在外部很有用。
例如:
const isEmpty = !!children.length;
【讨论】: