zoukankan      html  css  js  c++  java
  • 分享一个在js中判断数据是undefined,NaN,null,的技巧

    教大家如何在js中判断一个值是否是undefined,null,NaN,以及如何单独判断


    平常开发过程中大家可能遇到一种问题,就是取页面某个值的时候获取不到这个var就是undefined了,如果是数字类型的就成了NaN,这个时候判断页面这个值是否存在成了一个麻烦事.

    那么有没有什么方法可以在我获取了之后判断有效性呢?还真的有,

    判断undefined,null,NaN如下:

    1 var tmp = null; //这个tmp可以是undefined,NaN,下面的判断都会返回true.
    2 if (!tmp) { 
    3   alert("null or undefined or NaN"); 
    4 }

    (*切记:!0也是会返回true的,也就是说0也会被当做无效数据,请根据实际情况自己组合判断)

    加一个叹号就行了,有的朋友就会问了,如果我需要在这个数据有效时做某些操作,难道要再加一个叹号?,对,的确是这样的.如下:

    1 var tmp = 'wuyou'; 
    2 if (!!tmp) { 
    3     alert("数据有效"); 
    4 }

    单独判断null,undefined,NaN的方法:

    判断NaN:

    1 var tmp = 0/0; //0做除数是算法错误,所以结果是NaN
    2 if(isNaN(tmp)){ 
    3     alert("NaN"); 
    4 }

    判断undefined:

    1 var tmp = undefined; 
    2 if (typeof(tmp) == "undefined"){ 
    3     alert("undefined"); 
    4 }

    判断null:

    1 var tmp = null; 
    2 if (!tmp && typeof(tmp)!="undefined" && tmp!=0){ 
    3     alert("null"); 
    4 }

    判断undefined和null:

     1 var tmp = undefined; 
     2 if (tmp== undefined) 
     3 { 
     4     alert("null or undefined"); 
     5 }
     6 var tmp = undefined; 
     7 if (tmp== null) 
     8 { 
     9     alert("null or undefined"); 
    10 }

    其实undefined和null是一样的null == undefined.唯一不同就是当tmp是null时

    typeof(tmp)!="undefined"为true,undefined为false

    谢谢大家看我的博客,喜欢的话发个评论吧

  • 相关阅读:
    中国移动神州行5元卡普遍缺货
    中国移动:抢占4G开展先机 上马手机付出
    广东可团购烧号CDMA版iPhone 4
    买了一款新手机!show 一下
    提供浙江大学信息与通信工程专业的考研资料
    实习实习!
    考研or保研?
    处理 NSOpertion 间依赖关系的一种方式
    2D & 3D Engine Resource
    在 iOS 应用中使用 Lua 作为模块粘合剂的方法
  • 原文地址:https://www.cnblogs.com/zizaiwuyou/p/undefined_null_NaN.html
Copyright © 2011-2022 走看看