JS第一篇:关于JS判断字符串是否为空的讨论

今天,在我实习的公司,师兄拿了一个项目的源代码要我去熟悉。

后来我想要去实现一个功能的时候,我就去翻了下前面师兄的代码。

结果看到js这一块,有个if判断难住我了。

是这样写的

 

loadData("pc");
var loadData = function (type) {
    if(!type){
        type="pc";
    }
	................
}


作为刚出来的小白,我就看不懂了

 

!type 这明明是false ,岂不是下面的type=“pc”怎么也不需要执行,干嘛还要写这句。

我就问了比我早出道的室友,他一开始也不清楚,当时我没明说是js语句,他以为是java代码。

他想了好久才跟我说,

 type 空 为false  !type就是ture ,就是用来判断type字符串是否为空的条件,我才懂了这条js语句的意思。

后面我把源码截图发给他,他又说java和js判断字符串的条件不一样,

到现在我才知道原来是不一样的,赶紧上网查询。

搞清楚了,的确不一样。

为什么呢?因为js中的null和undefined,0,false等虽然不同,但是判断的结果一样,所以要比java更加精细判断。

所以在js中最主要判断字符串为空的方法有如下:

第一种是根据字符串的length来判断

var str = '';
if (str.length == 0)
{
    alert('不能为空');
}

第二种,比上一种好一点,就是用户输出空格和制表符等其他不是正常的字符时,也会提示为空

var str = ' ';
if (str.replace(/(^\s*)|(\s*$)/g, "").length ==0)
{
    alert('不能为空');
}

向上面那种js判断,是偷懒的写法,但是如果不需要那么的精细判断,当然可以用。


java中判断字符串为空的条件倒是很直观明了

1:s == null || s.equals("")

2:s == null || s.length()<=0

3:s == null || s.isEmpty()

 

以上就是我对判断字符串为空的认知啦

以后或许还有新的认识,我还会再来记录的。

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值