zoukankan      html  css  js  c++  java
  • js判断undefined类型,undefined,null, 的区别详细解析

    5基本数据类型:Undefined、Null、Boolean、Number、String                             引用数据类型:Object

    http://www.jb51.net/article/44472.htm

    js判断undefined类型

    今天使用showModalDialog打开页面,返回值时。当打开的页面点击关闭按钮或直接点浏览器上的关闭则返回值是undefined
    所以自作聪明判断  

    var reValue=window.showModalDialog("","",""); 
      if (reValue== undefined){
      alert("undefined");
     }

    发现判断不出来,最后查了下资料要用typeof

    方法:
    if (typeof(reValue) == "undefined") { 
        alert("undefined"); 
    }   
    typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"


    js中undefined,null,NaN的区别

    1.类型分析:
    js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型。
    var a1;
    var a2 = true;
    var a3 = 1;
    var a4 = "Hello";
    var a5 = new Object();
    var a6 = null;
    var a7 = NaN;
    var a8 = undefined;
    alert(typeof a);    //显示"undefined"
    alert(typeof a1); //显示"undefined"
    alert(typeof a2); //显示"boolean"
    alert(typeof a3); //显示"number"
    alert(typeof a4); //显示"string"
    alert(typeof a5); //显示"object"
    alert(typeof a6); //显示"object"
    alert(typeof a7); //显示"number"
    alert(typeof a8); //显示"undefined"

    从上面的代码中可以看出未定义的值和定义未赋值的为undefined,null是一种特殊的object,NaN是一种特殊的number。

    2.比较运算
    var a1;         //a1的值为undefined
    var a2 = null;
    var a3 = NaN;
    alert(a1 == a2); //显示"true"
    alert(a1 != a2); //显示"false"
    alert(a1 == a3); //显示"false"
    alert(a1 != a3); //显示"true"
    alert(a2 == a3); //显示"false"
    alert(a2 != a3); //显示"true"
    alert(a3 == a3); //显示"false"
    alert(a3 != a3); //显示"true"

    从上面的代码可以得出结论:(1)undefined与null是相等;(2)NaN与任何值都不相等,与自己也不相等。

    JavaScript undefined 属性

    定义和用法
    undefined 属性用于存放 JavaScript 的 undefined 值。

    语法
    undefined

    说明
    无法使用 for/in 循环来枚举 undefined 属性,也不能用 delete 运算符来删除它。
    undefined 不是常量,可以把它设置为其他值。
    当尝试读取不存在的对象属性时也会返回 undefined。

    提示和注释
    提示:只能用 === 运算来测试某个值是否是未定义的,因为 == 运算符认为 undefined 值等价于 null。
    注释:null 表示无值,而 undefined 表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。

    实例
    在本例中,我们将检测两个变量中未定义的一个:
    <script type="text/javascript">
    var t1=""
    var t2
    if (t1===undefined) {document.write("t1 is undefined")}
    if (t2===undefined) {document.write("t2 is undefined")}
    </script>

    输出:
    t2 is undefined

  • 相关阅读:
    java编译错误No enclosing instance of type TestFrame is accessible. Must qualify the allocation with an enclosing instance of type TestFrame (e.g. x.new A(
    java 2中创建线程方法
    动态规划基本思想
    关于eclipse编译一个工程多个main函数
    java Gui初识
    Eclipse中java项目的打包
    java 播放声音
    把资源文件夹导入到eclipse中
    Java建立JProgressBar
    How to grant permissions to a custom assembly that is referenced in a report in Reporting Services
  • 原文地址:https://www.cnblogs.com/dlgood/p/6423042.html
Copyright © 2011-2022 走看看