js判断为空Null与字符串为空简写方法


Posted in Javascript onFebruary 24, 2014

最近突然发现自己写的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]。
判断为空怎么简写,就为大家介绍到这里,希望上面的方法能对大家有所帮助。
Javascript 相关文章推荐
jquery获取下拉列表的值为null的解决方法
Mar 18 Javascript
Node.js开发指南中的简单实例(mysql版)
Sep 17 Javascript
jquery序列化form表单使用ajax提交后处理返回的json数据
Mar 03 Javascript
JQuery插入DOM节点的方法
Jun 11 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
Sep 06 Javascript
JS给swf传参数的实现方法
Sep 13 Javascript
jQuery监听文件上传实现进度条效果的方法
Oct 16 Javascript
Javascript封装id、class与元素选择器方法示例
Mar 13 Javascript
JS实现简易换图时钟功能分析
Jan 04 Javascript
jquery.pagination.js分页使用教程
Oct 23 jQuery
在vue中使用echars实现上浮与下钻效果
Nov 08 Javascript
jQuery列表动态增加和删除的实现方法
Nov 05 jQuery
JS清空多文本框、文本域示例代码
Feb 24 #Javascript
脚本合并提升javascript性能示例
Feb 24 #Javascript
动态加载脚本提升javascript性能
Feb 24 #Javascript
巧用局部变量提升javascript性能
Feb 24 #Javascript
javascript中的原型链深入理解
Feb 24 #Javascript
JSONP获取Twitter和Facebook文章数的具体步骤
Feb 24 #Javascript
动态加载js、css等文件跨iframe实现
Feb 24 #Javascript
You might like
php单件模式结合命令链模式使用说明
2008/09/07 PHP
PHP array 的加法操作代码
2010/07/24 PHP
PHP中的多行字符串传递给JavaScript的两种方法
2014/06/19 PHP
10个简化PHP开发的工具
2014/12/25 PHP
PHP往XML中添加节点的方法
2015/03/12 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
js刷新框架子页面的七种方法代码
2008/11/20 Javascript
利用js获取服务器时间的两个简单方法
2010/01/08 Javascript
JQuery伸缩导航练习示例
2013/11/13 Javascript
js导航栏单击事件背景变换示例代码
2014/01/13 Javascript
JavaScript判断一个字符串是否包含指定子字符串的方法
2015/03/18 Javascript
JS实现表单中checkbox对勾选中增加边框显示效果
2015/08/21 Javascript
解决JS无法调用Controller问题的方法
2015/12/31 Javascript
VueJs与ReactJS和AngularJS的异同点
2016/12/12 Javascript
nodejs基础知识
2017/02/03 NodeJs
Bootstrap table 定制提示语的加载过程
2017/02/20 Javascript
JavaScript仿微信打飞机游戏
2020/07/05 Javascript
react 创建单例组件的方法
2018/04/26 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
2018/11/14 Javascript
微信小程序实现的五星评价功能示例
2019/04/25 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
[02:20]DOTA2中文配音宣传片
2013/05/22 DOTA
Python中文分词实现方法(安装pymmseg)
2016/06/14 Python
Python日期的加减等操作的示例
2017/08/15 Python
全网首秀之Pycharm十大实用技巧(推荐)
2020/04/27 Python
Python bisect模块原理及常见实例
2020/06/17 Python
香港钟表珠宝首饰商城:OneMallTime网摩间
2016/10/14 全球购物
动漫专业高职生职业生涯规划书
2014/02/15 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
活动策划求职信模板
2014/04/21 职场文书
2014法院四风问题对照检查材料思想汇报
2014/10/04 职场文书
2014年办公室工作总结范文
2014/11/12 职场文书
八年级地理课件资料及考点知识分享
2019/08/30 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
如何通过简单的代码描述Angular父组件、子组件传值
2022/04/07 Javascript
Java 使用类型为Object的变量指向任意类型的对象
2022/04/13 Java/Android