为了账号安全,请及时绑定邮箱和手机立即绑定

判断对象里面除了布尔值以外其他键值对是否为空?

判断对象里面除了布尔值以外其他键值对是否为空?

湖上湖 2019-03-20 16:19:00
let joke ={    a:'1',    b:'2',    c:false}for(let key in joke){    if(joke[key]==''){        alert('有空值')    }}如上,在循环检验时候,c是布尔值false,判断时弹出了alert,请教一下如何忽略键值对是布尔值的情况,只检测字符串和数字类型是否为空?
查看完整描述

3 回答

?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

==发生了隐式类型转换,改成===就必须是''才进去。

只检测字符串和数字类型是否为空

没理解这句话,你是希望数字0也判定有空值?


查看完整回答
反对 回复 2019-04-02
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

for(let key in joke){

    if(joke[key] === '' && typeof joke[key] !== 'boolean'){

        alert('有空值')

    }

}


查看完整回答
反对 回复 2019-04-02
?
DIEA

TA贡献1820条经验 获得超2个赞

使用===
joke[key] === ''
如果还需要检查值为null或者undefined,可以在后面罗列这些条件
joke[key] === '' || joke[key] === null || joke[key] === undefined

查看完整回答
反对 回复 2019-04-02
  • 3 回答
  • 0 关注
  • 663 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信