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实现的可编辑下拉框实现代码
Aug 02 Javascript
js控制鼠标事件移动及移出效果显示
Oct 19 Javascript
20个实用的JavaScript技巧分享
Nov 28 Javascript
在浏览器中打开或关闭JavaScript的方法
Jun 03 Javascript
Bootstrap框架的学习教程详解(二)
Oct 18 Javascript
setTimeout学习小结
Feb 08 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
Nov 22 Javascript
jQuery简单判断值是否存在于数组中的方法示例
Apr 17 jQuery
对TypeScript库进行单元测试的方法
Jul 18 Javascript
Vue实现渲染数据后控制滚动条位置(推荐)
Dec 09 Javascript
jQuery实现鼠标滑动切换图片
May 27 jQuery
.netcore+vue 实现压缩文件下载功能
Sep 24 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
一个简易需要注册的留言版程序
2006/10/09 PHP
pw的一个放后门的方法分析
2007/10/08 PHP
IP攻击升级,程序改进以对付新的攻击
2010/11/23 PHP
如何用php获取文件名后缀
2013/06/09 PHP
PHP中模拟处理HTTP PUT请求的例子
2014/07/22 PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
2016/03/23 PHP
php+redis消息队列实现抢购功能
2018/02/08 PHP
PHP实现随机数字、字母的验证码功能
2018/08/01 PHP
php简单计算权重的方法示例【适合抽奖类应用】
2019/06/10 PHP
js 未结束的字符串常量错误解决方法
2010/06/13 Javascript
JS文本框默认值处理详解
2013/07/10 Javascript
使用ajax+jqtransform实现动态加载select
2014/12/01 Javascript
jQuery使用之设置元素样式用法实例
2015/01/19 Javascript
jquery实现的V字形显示效果代码
2015/10/27 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
2016/06/01 Javascript
jQuery实现简单的网页换肤效果示例
2016/09/18 Javascript
vue+iview写个弹框的示例代码
2017/12/05 Javascript
vue移动端轻量级的轮播组件实现代码
2018/07/12 Javascript
JS sort排序详细使用方法示例解析
2020/09/27 Javascript
Python获取CPU、内存使用率以及网络使用状态代码
2018/02/08 Python
基于python list对象中嵌套元组使用sort时的排序方法
2018/04/18 Python
浅析python3字符串格式化format()函数的简单用法
2018/12/07 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
Python将主机名转换为IP地址的方法
2019/08/14 Python
python 实现仿微信聊天时间格式化显示的代码
2020/04/17 Python
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
施华洛世奇加拿大官网:SWAROVSKI加拿大
2018/06/03 全球购物
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
2013/07/12 面试题
质监局领导班子对照检查材料思想汇报
2014/09/27 职场文书
党员三严三实心得体会
2014/10/13 职场文书
2014年后勤工作总结范文
2014/12/16 职场文书
安阳殷墟导游词
2015/02/10 职场文书
校本研修个人总结
2015/02/28 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书
Python echarts实现数据可视化实例详解
2022/03/03 Python