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 入门级学习笔记及源码
Jan 22 Javascript
html超链接打开窗口大小的方法
Mar 05 Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
May 11 Javascript
js实现鼠标触发图片抖动效果的方法
Feb 27 Javascript
JavaScript统计网站访问次数的实现代码
Nov 18 Javascript
HTML中使背景图片自适应浏览器大小实例详解
Apr 06 Javascript
Angular2使用Angular-CLI快速搭建工程(二)
May 21 Javascript
angularjs 页面自适应高度的方法
Jan 17 Javascript
微信小程序实现折叠面板
Jan 31 Javascript
说说如何利用 Node.js 代理解决跨域问题
Apr 22 Javascript
vue 中 beforeRouteEnter 死循环的问题
Apr 23 Javascript
js+css实现扇形导航效果
Aug 18 Javascript
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查询网站的PR值
2013/10/30 PHP
php实现学生管理系统
2020/03/21 PHP
PHP调用Mailgun发送邮件的方法
2017/05/04 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
2019/10/10 PHP
用JS剩余字数计算的代码
2008/07/03 Javascript
jQuery中append、insertBefore、after与insertAfter的简单用法与注意事项
2020/04/04 Javascript
JavaScript的继承的封装介绍
2013/10/15 Javascript
JQuery中dataGrid设置行的高度示例代码
2014/01/03 Javascript
javascript页面加载完执行事件代码
2014/02/11 Javascript
jquery实现侧边弹出的垂直导航
2014/12/09 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
JS中使用apply、bind实现为函数或者类传入动态个数的参数
2016/04/26 Javascript
使用JS批量选中功能实现更改数据库中的status状态值(批量展示)
2016/11/22 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
JS实现颜色的10进制转化成rgba格式的方法
2017/09/04 Javascript
VUE实现可随意拖动的弹窗组件
2018/09/25 Javascript
微信小程序template模板与component组件的区别和使用详解
2019/05/22 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
nodeJS与MySQL实现分页数据以及倒序数据
2020/06/05 NodeJs
Django使用HttpResponse返回图片并显示的方法
2018/05/22 Python
Python爬虫实现抓取京东店铺信息及下载图片功能示例
2018/08/07 Python
Python爬虫爬取煎蛋网图片代码实例
2019/12/16 Python
keras .h5转移动端的.tflite文件实现方式
2020/05/25 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
html5中canvas学习笔记2-判断浏览器是否支持canvas
2013/01/06 HTML / CSS
赫里福德的一家乡村零售商店:Philip Morris & Son
2017/06/25 全球购物
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
军训考核自我鉴定
2014/02/13 职场文书
2014年五四青年节活动策划书
2014/04/22 职场文书
小学教师求职信范文
2015/03/20 职场文书
公司表扬稿范文
2015/05/05 职场文书
python文件名批量重命名脚本实例代码
2021/04/22 Python
使用redis实现延迟通知功能(Redis过期键通知)
2021/09/04 Redis
如何基于python实现单目三维重建详解
2022/06/25 Python