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使用removeClass方法删除元素指定Class的方法
Mar 26 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
Aug 31 Javascript
javascript实现自动填写表单实例简析
Dec 02 Javascript
打造自己的jQuery插件入门教程
Sep 23 Javascript
JS实现碰撞检测的方法分析
Jan 19 Javascript
vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法
Sep 05 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 Javascript
详解用JS添加和删除class类名
Mar 25 Javascript
iview form清除校验状态的实现
Sep 19 Javascript
JavaScript 作用域scope简单汇总
Oct 23 Javascript
JS字符串和数组如何实现相互转化
Jul 02 Javascript
Vue3配置axios跨域实现过程解析
Nov 25 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
正则表达式语法
2006/10/09 Javascript
15种PHP Encoder的比较
2007/03/06 PHP
PHP 使用pcntl和libevent 实现Timer功能
2013/10/27 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
PHP反射基础知识回顾
2020/09/10 PHP
javascript hashtable实现代码
2009/10/13 Javascript
基于jquery的跨域调用文件
2010/11/19 Javascript
关于JavaScript的with 语句的使用方法
2011/05/09 Javascript
JS中Iframe之间传值的方法
2013/03/11 Javascript
jquery实现网页查找功能示例分享
2014/02/12 Javascript
jQuery事件绑定on()与弹窗实现代码
2016/04/28 Javascript
浅析js的模块化编写 require.js
2016/12/07 Javascript
jQuery中Chosen三级联动功能实例代码
2017/03/07 Javascript
ES5学习教程之Array对象
2017/04/01 Javascript
js原生日历的实例(推荐)
2017/10/31 Javascript
vue用Object.defineProperty手写一个简单的双向绑定的示例
2018/07/09 Javascript
Vue头像处理方案小结
2018/07/26 Javascript
在Vant的基础上封装下拉日期控件的代码示例
2018/12/05 Javascript
axios 实现post请求时把对象obj数据转为formdata
2019/10/31 Javascript
vue 解决addRoutes多次添加路由重复的操作
2020/08/04 Javascript
python开发的小球完全弹性碰撞游戏代码
2013/10/15 Python
Python实现的微信公众号群发图片与文本消息功能实例详解
2017/06/30 Python
Python实现的质因式分解算法示例
2018/05/03 Python
Python数据分析pandas模块用法实例详解
2019/11/20 Python
tensorflow 20:搭网络,导出模型,运行模型的实例
2020/05/26 Python
浅析NumPy 切片和索引
2020/09/02 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
一款纯css3实现的响应式导航
2014/10/31 HTML / CSS
美国领先的商务贺卡出版商:The Gallery Collection
2018/02/13 全球购物
POP文化和音乐灵感的时尚:Hot Topic
2019/06/19 全球购物
学生出入校管理制度
2014/01/16 职场文书
2014年医院党建工作总结
2014/12/20 职场文书
教师节感想
2015/08/11 职场文书
Nginx服务器添加Systemd自定义服务过程解析
2021/03/31 Servers
Winsows11性能如何? win11性能测评多核竟比Win10差了10%
2021/11/21 数码科技
CSS文本阴影 text-shadow 悬停效果详解
2022/05/25 HTML / CSS