JavaScript:如何从含0、undefined、null、false的数组中获取值0?
从数组[0, undefined, null, false]中筛选出值0的解决办法
你当前使用filter(e => e)和find(e => e)失败的原因是:在JavaScript中,0、undefined、null、false都属于假值,直接将元素作为判断条件时,所有假值都会被排除,自然得不到预期的0。
要精准筛选出0,需要使用**严格相等运算符===**来明确匹配值和类型:
1. 使用filter方法获取包含0的数组
[0, undefined, null, false].filter(e => e === 0) // 输出: [0]
2. 使用find方法获取第一个匹配的0
[0, undefined, null, false].find(e => e === 0) // 输出: 0
如果需要更灵活的判断(比如同时匹配数字0和字符串"0"),可以调整判断条件,但针对你的需求,严格匹配=== 0就足够解决问题。
内容的提问来源于stack exchange,提问作者Navneet
相关产品推荐
相关产品推荐

