html判断空值,JS判断变量值为空

JavaScript本身没有判断一个变量值是不是空值的函数,因为变量有可能是string,object,number,boolean等类型,类型不同,判断方法也不同。

所以在判断是否为空前,应预判、确定数据的类型,如果期望类型不清晰,则可能会导致错误的判断或考虑情况不周全。

确定数据类型后,然后根据不同的数据类型使用不同的方法来判断,例function isEmpty(v) {

switch (typeof v) {

case 'undefined':

return true;

case 'string':

if (v.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, '').length == 0) return true;

break;

case 'boolean':

if (!v) return true;

break;

case 'number':

if (0 === v || isNaN(v)) return true;

break;

case 'object':

if (null === v || v.length === 0) return true;

for (var i in v) {

return false;

}

return true;

}

return false;

}

输出:isEmpty()              //true

isEmpty([])            //true

isEmpty({})            //true

isEmpty(0)             //true

isEmpty(Number("abc")) //true

isEmpty("")            //true

isEmpty("   ")         //true

isEmpty(false)         //true

isEmpty(null)          //true

isEmpty(undefined)     //true

空值有:undefined、 null、 ''、 NaN、false、0、[]、{} 、空白字符串,这些都返回true。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值