javascript对于0的解读
CreateTime--2017年6月29日10:36:01
Author:Marydon
javascript对于0的解读
1.0与“0”
1.1 判断0与"0"是否相等
测试:alert(0 == "0")
结果:返回true
结论:
a.当判断0 == "0",js返回的是true;
b.但是调用length属性时只能是"0",因为数字number类型没有length属性;
c.javascript将number类型与数字格式的string视为相等,
这个特性多用于:当后台返回的是字符串格式的数字且判断是否和指定数值相等时,不需要做数值类型转换,使用方便,举例:
var example = "12345";
方式一:if (12345 == example) {}(推荐使用)
方式二:if ("12345" == example) {}(不推荐使用)
1.2 关于”0“的逻辑判断
情景1:当变量值为0时不能进if语句
错误判断用法:
// 二者满足一个就弹出页面
if (param1.length > 0 || param2.length > 0) {
var url = baseUrl + '/telemedicine/room/operate/viewMsg.do?YCHZCOUNT=' + param1 + '&WLZJCOUNT=' + param2;
object.showMessage('未审核消息提醒', url, 500, 300, 2);
}
解析:”0“.length返回的是1,不是0。
正确判断方法:
// 二者满足一个就弹出页面
if (0 != param1 || 0 != param2) {
var url = baseUrl + '/telemedicine/room/operate/viewMsg.do?YCHZCOUNT=' + param1 + '&WLZJCOUNT=' + param2;
object.showMessage('未审核消息提醒', url, 500, 300, 2);
}
注意:
使用param!=0这种判断条件的必要前提是:参数是>=0的string类型的数值或数字;
业务逻辑:使用SQL对满足条件的数据进行计数,返回的结果必然>=0
2.0与“”
判断0与""是否相等
测试:alert(0 == "")
结果:返回true
结论:当判断0 == "",js返回的是true。
3.
javascript对于0的解读的更多相关文章
- js中 javascript:void(0) 用法详解
点击链接不做任何事情: <a href="#" onclick="return false">test</a> <a href=& ...
- html 空链接 href="#"与href="javascript:void(0)"的区别
#包含了一个位置信息 默认的锚是#top 也就是网页的上端 而javascript:void(0) 仅仅表示一个死链接 这就是为什么有的时候页面很长浏览链接明明是#但跳动到了页首 而javascrip ...
- a href=#与 a href=javascript:void(0) 的区别
a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP <a href="javascript:void(0)" onCl ...
- href使用 javascript:;与javascript:void(0)防跳到顶部
有时候我们在编写js过程中,需要触发事件而不需要返回值,那么就可能需要这样的写法 href=”#”,包含了一个位置信息.默认的锚是#top,也就是网页的上端,当连续快速点击此链接时会导致浏览器巨慢 ...
- javascript:void(0)
这是不是一个设计缺陷呢 void(0)这种用法巧妙利用void关键字的特性返回undefined(且没有副作用).因为不是关键字,比如直接使用undefined,内容可能被改写. 再来看为啥使用0,而 ...
- <a href=”#”>与 <a href=”javascript:void(0)” 的区别
<a href=”#”>中的“#”其实是锚点的意思,默认为#top,所以当页面比较长的时候,使用这种方式会让页面刷新到页首(页面的最上部) javascript:void(0)其实是一个死 ...
- 超级链接a中javascript:void(0)弹出另外一个框问题
转字:http://my.oschina.net/castusz/blog/68186 结果在IE.Firefox.Chrome都是先执行的onclick事件,在项目中我们尽量不要同时使用这两种方式. ...
- javascript:void(0) ,设置a链接无效,设置点击a页面不刷新,不跳动
http://www.cnblogs.com/opper/archive/2009/01/12/1373971.html 我想使用过ajax的都常见这样的代码: <a href="ja ...
- IE6与 javascript:void(0)
遇到过几次这种问题,现在总结一下. 代码: <a onclick="window.location.href='http://www.google.com'" href=&q ...
随机推荐
- grep 参数
功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...
- ubuntu问题集锦
我使用的是ubuntu 14.04 用UltraIOS 制作镜像安装的 ubuntu 问题1:闪屏问题以及文字显示不全 解决方案:重装显卡驱动 解决过程:http://my.oschina.net/ ...
- 【BZOJ 3175】 3175: [Tjoi2013]攻击装置(二分图匹配)
3175: [Tjoi2013]攻击装置 Description 给定一个01矩阵,其中你可以在0的位置放置攻击装置.每一个攻击装置(x,y)都可以按照“日”字攻击其周围的 8个位置(x-1,y-2) ...
- [UOJ347]通道
锟题x1 以下用$d_k(x,y)$表示$x,y$在第树$k$上的距离,$h_k(x)$表示$x$在树$k$上的深度 先做两棵树,即最大化$d_1(x,y)+d_2(x,y)=h_1(x)+h_1(y ...
- 【动态规划】【滚动数组】【搜索】Playrix Codescapes Cup (Codeforces Round #413, rated, Div. 1 + Div. 2) D. Field expansion
显然将扩张按从大到小排序之后,只有不超过前34个有效. d[i][j]表示使用前i个扩张,当length为j时,所能得到的最大的width是多少. 然后用二重循环更新即可, d[i][j*A[i]]= ...
- 【带权并查集】Gym - 100923H - Por Costel and the Match
裸题. 看之前的模版讲解吧,这里不再赘述了. #include<cstdio> #include<cstring> using namespace std; int fa[10 ...
- Error attempting to get column 'xxx' from result set. Cause: java.sql.SQLException: 无法转换为内部表示
因为<resultMap>中映射的实体类属性类型与数据库字段类型不一致造成的.
- InetAddress之域名解析
1. getByName public static InetAddress getByName(String host) throws UnknownHostException { return I ...
- Java 导出大批量数据excel(百万级)(转载)
参考资料:http://bbs.51cto.com/thread-1074293-1-1.html http://bbs.51cto.com/viewthread.ph ...
- BabyLinux制作过程详解
转:http://www.360doc.com/content/05/0915/14/1429_12641.shtml BabyLinux制作过程详解 作者:GuCuiwen email:win2li ...