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 相关文章推荐
javascript实现动态增加删除表格行(兼容IE/FF)
Apr 02 Javascript
JavaScript的类型转换(字符转数字 数字转字符)
Aug 30 Javascript
jQuery控制Div拖拽效果完整实例分析
Apr 15 Javascript
js表单处理中单选、多选、选择框值的获取及表单的序列化
Mar 08 Javascript
JS中innerHTML和pasteHTML的区别实例分析
Jun 22 Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
Aug 01 Javascript
JavaScript实现简单的双色球(实例讲解)
Jul 31 Javascript
详解React中合并单元格的正确写法
Jan 08 Javascript
vue项目中定义全局变量、函数的几种方法
Nov 08 Javascript
jQuery HTML css()方法与css类实例详解
May 20 jQuery
如何区分vue中的v-show 与 v-if
Sep 08 Javascript
如何封装Vue Element的table表格组件
Feb 06 Vue.js
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
香妃
2021/03/03 冲泡冲煮
社区(php&&mysql)二
2006/10/09 PHP
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
2007/03/07 PHP
PHP中函数内引用全局变量的方法
2008/10/20 PHP
php判断输入是否是纯数字,英文,汉字的方法
2015/03/05 PHP
纯php生成随机密码
2015/10/30 PHP
php判断用户是否关注微信公众号
2016/07/22 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
js判断选择的时间是否大于今天的代码
2013/08/20 Javascript
Jquery的基本对象转换和文档加载用法实例
2015/02/25 Javascript
jQuery实现鼠标单击网页文字后在文本框显示的方法
2015/05/06 Javascript
JS实现仿QQ聊天窗口抖动特效
2015/05/10 Javascript
javascript常用的方法整理
2015/08/20 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
2016/03/22 Javascript
js仿微信语音播放实现思路
2016/12/12 Javascript
AngularJS动态添加数据并删除的实例
2018/02/27 Javascript
JavaScript中set与get方法用法示例
2018/08/15 Javascript
vue组件之间的数据传递方法详解
2019/04/19 Javascript
vue 取出v-for循环中的index值实例
2019/11/09 Javascript
element中的$confirm的使用
2020/04/26 Javascript
总结python爬虫抓站的实用技巧
2016/08/09 Python
python 遍历目录(包括子目录)下所有文件的实例
2018/07/11 Python
Python+OpenCV采集本地摄像头的视频
2019/04/25 Python
使用Python 自动生成 Word 文档的教程
2020/02/13 Python
python GUI库图形界面开发之PyQt5信号与槽机制、自定义信号基础介绍
2020/02/25 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
2020/02/28 Python
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
《珍珠泉》教学反思
2014/02/20 职场文书
体操比赛口号
2014/06/10 职场文书
工作表扬信
2015/01/17 职场文书
资金申请报告范文
2015/05/14 职场文书
李强为自己工作观后感
2015/06/11 职场文书
中秋节随笔
2015/08/15 职场文书
如何自己动手写SQL执行引擎
2021/06/02 MySQL
Python提取PDF指定内容并生成新文件
2021/06/09 Python
Python实现自动玩连连看的脚本分享
2022/04/04 Python