zoukankan      html  css  js  c++  java
  • JS中Null与Undefined的区别

        我们知道JavaScript一共有七种数据类型:字符串,数字,布尔,数组,对象,null,undefined,

    其中原始数据类型有五种:字符串,数字,布尔,null,undefined,今天就看一下 null和undefined这两种数据类型。

    这两种类型常常会使JavaScript的开发人员产生疑惑,在什么时候是Null,什么时候又是Undefined?

        undefined类型只有一个值,即undefined。当声明的变量还未被初始化的时候,变量的值默认为undefined,  

    var a ;console.log(a)//output undefined ,
    alert(typeof(a))//output undefined;

        null类型也是只有一个值,即null,null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。例子如下:

    var element = getElementById("no_id");当DOM书中不存在id为"no_id"的元素的时候,alert(element);//output null;
    
    alert(typeof element)//output object;

     好,问题出现了,为什么null类型又是Object了呢?其实这个是JavaScript最初实现的一个错误,后来被ECMAScript沿用下来,在今天我们可以解释为,null是一个不存在的对象的占位符。

    但是值得注意的是,在我们实际的编码中要注意这个特性:

    alert(null==undefined);//output true;
    alert(null===undefined);//output false;

     ECMAScript认为undefined是从null中派生出来的,所以把他们定义为相等。要区别这个我们可以用===恒等于(绝对等于)来判断 

  • 相关阅读:
    Redis源代码分析(十三)--- redis-benchmark性能測试
    kvm中运行kvm
    umount.nfs device busy day virsh extend diskSpace, attachDisk
    ultravnc
    openNebula dubug
    maintenance ShellScripts
    virsh VMI deploy data serial xml
    cloud computing platform,virtual authentication encryption
    基于C 的libvirt 接口调用
    storage theory
  • 原文地址:https://www.cnblogs.com/imnzq/p/6639584.html
Copyright © 2011-2022 走看看