zoukankan      html  css  js  c++  java
  • js判断为空Null与字符串为空简写方法

    原:http://www.jb51.net/article/47234.htm

    最近突然发现自己写的JavaScript代码比较臃肿,所以开始研究JavaScript的简写方法。这样一来,可以让我们的JavaScript代码看起来比较清爽,同时也可以提高我们的技术。那么判断为空怎么简写呢?
    下面就是有关判断为空的简写方法。
    代码如下:

      if (variable1 !== null || variable1 !== undefined || variable1 !== '') { 
      var variable2 = variable1; 
      }
    

    上面的意思是说如果variable1不是一个空对象,或者未定义,或者不等于空字符串,那么声明一个variable2变量,将variable1赋给variable2。也就是说如果variable1存在那么就将variable1的值赋给variable2,若不存在则为空字符串。如下面的简写代码。
    简写代码:
    代码如下:

      var variable2 = variable1 || '';
    

    以下是不正确的方法:
    代码如下:

      var exp = null; 
      if (exp == null) 
      { 
      alert("is null"); 
      }
    

    exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 null 和 undefined 时可使用本法。
    代码如下:

      var exp = null; 
      if (!exp) 
      { 
      alert("is null"); 
      }
    

    如果 exp 为 undefined,或数字零,或 false,也会得到与 null 相同的结果,虽然 null 和二者不一样。注意:要同时判断 null、undefined、数字零、false 时可使用本法。
    代码如下:

      var exp = null; 
      if (typeof exp == "null") 
      { 
      alert("is null"); 
      }
    

    为了向下兼容,exp 为 null 时,typeof null 总返回 object,所以不能这样判断。
    代码如下:

      var exp = null; 
      if (isNull(exp)) 
      { 
      alert("is null"); 
      }
    

    判断字符串是否为空
    s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ fnrtv]。 很多情况下,都是用length来直接判断字符串是否为空,如下:
    代码如下:

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

    但如果用户输入的是空格,制表符,换页符呢?这样的话,也是不为空的,但是这样的数据就不是我们想要的吧。
    其实可以用正则表达式来把这些“空”的符号去掉来判断的
    代码如下:

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

    s 小写的s是,匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ fnrtv]。
    判断为空怎么简写,就为大家介绍到这里,希望上面的方法能对大家有所帮助。

    str.replace(/(^s*)|(s*$)/g, "")) != ""

  • 相关阅读:
    SAP S/4HANA extensibility扩展原理介绍
    SAP CRM系统订单模型的设计与实现
    使用nodejs代码在SAP C4C里创建Individual customer
    SAP Cloud for Customer Account和individual customer的区别
    Let the Balloon Rise map一个数组
    How Many Tables 简单并查集
    Heap Operations 优先队列
    Arpa’s obvious problem and Mehrdad’s terrible solution 思维
    Passing the Message 单调栈两次
    The Suspects 并查集
  • 原文地址:https://www.cnblogs.com/daysme/p/6979231.html
Copyright © 2011-2022 走看看