如何简化value !== null的判断?需将null视为false、0视为true
满足需求的简洁判断写法
你的需求是:值为null时返回false,值为0时返回true,而且!!value和Boolean(value)不符合要求(因为这俩会把0转成false)。
首先说结论:你当前用的value !== null已经是非常简洁的写法了,完全匹配你的需求——只有null会返回false,包括0在内的其他所有值都会返回true。
如果你的场景里可以接受把undefined也一并判定为false(也就是null或undefined时返回false,其他情况返回true),那可以用更短的简写:value != null。这是JS里的常用写法,等价于value !== null && value !== undefined,自然也满足0返回true的要求。
要是你严格只需要排除null,那value !== null本身就是最简洁的了,找不到更短且完全贴合需求的表达式。
内容的提问来源于stack exchange,提问作者Garo Gabrielyan
相关产品推荐
相关产品推荐

