zoukankan      html  css  js  c++  java
  • undefined和null的区别

    JavaScript语言有两个表示"无"的值:undefined和null。

    var a = undefined;
    var a = null;

    a变量分别被赋值为undefined和null,赋值写法类似;而且在用if语句做判断时都会返回false;甚至undefined==null也会返回true。
    然而两者还是有区别的:
    undefined是一个undefined类型,而null是一个object类型。
    null表示"没有对象",即该处不应该有值。典型用法是:

    1. 作为函数的参数,表示该函数的参数不是对象。

    2. 作为对象原型链的终点。

      Object.getPrototypeOf(Object.prototype)    // null

    undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:

    1. 变量被声明了,但没有赋值时,就等于undefined。

      var i;
      i;    // undefined
    2. 调用函数时,应该提供的参数没有提供,该参数等于undefined。

      function f(x){
         console.log(x);
      }
      f();    // undefined
    3. 对象没有赋值的属性,该属性的值为undefined。

      var o = new Object();
      
      o.p;    // undefined 
    4. 函数没有返回值时,默认返回undefined。 var x = f();

       
      x; // undefined
  • 相关阅读:
    Cookie
    Servlet请求和响应
    Servlet
    Tomcat
    jQuery
    HTTP协议和ajax
    WebApp制作和正则
    BOM对象和json
    视频和音频
    改变文档结构的方法(5种)
  • 原文地址:https://www.cnblogs.com/wabxl/p/6067317.html
Copyright © 2011-2022 走看看