js中关于undefined值的判断

今天做网站时碰到了一个解决好久的问题:在网页上做了一个隐藏域,然后根据此隐藏域的值进行逻辑判断,部分代码如下所示:


 

js jscript javascript代码
1
2
3
4
5
if($("#articeFlag").val()=="undefined"){
                                                        
                   }else{
                                                        
                   }

 

         代码很简单,就不解释了。

         按照JavaScript的语法,如果某一个值不存在时alert的值肯定是“undefined”,然后进行上述判断应该问题,可是实际开发中发现不管此值是否存在,判断的结

果都是false,让我郁闷非常,以为哪个地方写错了,排查了好久都就没有结果。


        吸了一阵烟后,决定静下心好好想想哪里出错了。代码逻辑没错,是不是语法有错?度娘了一下的确是语法有误,此判断值应该用typeof方法进行进行判断后

再比较,即:


 
js jscript javascript代码
1
2
3
4
5
if(typeof($("#articeFlag").val())=="undefined"){
                                     
}else{
                                     
}

      问题就此解决了。



       顺便说下,typeof返回的值有以下几种:"number"、"string"、"boolean"、"object"、"function"、"undefined"


     原创文章,转载请注明出处:http://www.dianfusoft.com



原文地址:https://www.cnblogs.com/youqishini/p/2947518.html