js中null(空指针)的处理以及if(var)的理解

function checkQuanJiaFu(){

成都创新互联公司长期为上1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为孝南企业提供专业的网站建设、成都网站设计孝南网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

var mobil =document.getElementById("mobile");

var rfComPhone =document.getElementById("rfComPhone");

var flag = true;

alert(mobil +'ss'+rfComPhone);

var regTextMobil=/^0{0,1}(13[0-9]|15[0-9]|18[0-9])[0-9]{8}$/;

if(mobil.value!=''){

if(!regTextMobil.test(mobil.value)){

alert('手机号码格式不符');

mobil.value="";

flag = false;

}

}

if(rfComPhone.value!=''){

if(!regTextMobil.test(rfComPhone.value)){

alert('手机号码格式不符');

rfComPhone.value="";

flag = false;

}

}

return flag;

}

今天再修改之前做过的一个js时,由于mobile和rfComPhone有可能不同时出现在一个页面上,就导致了可能有null的情况,这样如果像上面代码中两个if中表达式的写法,就总有一个是不起作用的,但是又没错误提示,纠结了好长时间,后经同事指点,才发现要对null进行判断。于是代码修改if(mobil&&mobil.value!='')

 

function checkQuanJiaFu(){

var mobil =document.getElementById("mobile");

var rfComPhone =document.getElementById("rfComPhone");

var flag = true;

alert(mobil +'ss'+rfComPhone);

var regTextMobil=/^0{0,1}(13[0-9]|15[0-9]|18[0-9])[0-9]{8}$/;

if(mobil&&mobil.value!=''){

if(!regTextMobil.test(mobil.value)){

alert('手机号码格式不符');

mobil.value="";

flag = false;

}

}

if(rfComPhone&&rfComPhone.value!=''){

if(!regTextMobil.test(rfComPhone.value)){

alert('手机号码格式不符');

rfComPhone.value="";

flag = false;

}

}

return flag;

}

 错误是改过来了,但是,又发现一个问题,就是if(var)是什么意思?提出这个问题才发现原来自己的js水平还是依然很菜的,要继续学习。。。。

==========================

关于if(var)的理解:

发现网友的这段js写的很全啦,太好了,转过来学习!

    <script type="text/javascript">

        var r = "";

        window.onload = function () {

            var a;

            wLine(((a) ? "true " : "false ") + typeof (a)); //false  a==undefined

            wLine(((a=null) ? "true " : "false ") + typeof (a)); //false  a==null

            wLine(((a = -0) ? "true " : "false ") + typeof (a)); //false  a==0

            wLine(((a = -0.000000000001) ? "true " : "false ") + typeof (a)); //true a!=0

            wLine(((a = "") ? "true " : "false ") + typeof (a)); //false  a==""

            wLine(((a = " ") ? "true " : "false ") + typeof (a)); //true  a==" "  空格

            wLine(((a = function () { return false; }) ? "true " : "false ") + typeof (a)); //true a==function

            wLine(((a =( function () { return false; }))() ? "true " : "false ") + typeof (a)); //false a==function 

        }

        function wLine(val) {

          var f = document.forms[0];

          if(f)f.innerHTML+=val+"<hr/>";

          else alert(val);

        }

    </script>

从上面的代码可以看到,if表达式是很灵活的,除了像java中常见的表达式形式,还有很多情况

if(a)... 等价于  if(a==true) 或者if(a!=null)等等的意思。但是前者的范围比较大。

if(a) 只要a!=0 ; a!=null;a!=undefined;a!=""的情况下就成立了。

欢迎工作一到五年的Java工程师朋友们加入Java技术交流:659270626
群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,redis,Kafka,MySQL,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

网站标题:js中null(空指针)的处理以及if(var)的理解
文章网址:https://www.cdcxhl.com/article4/ppdjoe.html

成都网站建设公司_创新互联,为您提供网站导航企业网站制作外贸网站建设网站建设网站内链品牌网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站优化排名