美文网首页Web前端
[JavaScript]JavaScript中undefined

[JavaScript]JavaScript中undefined

作者: Belmode | 来源:发表于2018-05-02 09:29 被阅读1次

JavaScript中undefined和null的区别

JavaScript两个表示”无”的值:undefinednull。我在平时只是null用的多一点,undefined只是在报错中经常遇到。下面针对这两个数据类型的异同做一下详细的比较。

  1. undefinednull在if语句中,都会被自动转为false,相等运算符直接报告两者相等。
!null==!undefined==true
  1. null表示”没有对象”,即该处不应该有值。典型用法是:
    (1) 作为函数的参数,表示该函数的参数不是对象。

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

    Object.getPrototypeOf(Object.prototype) // null

  2. undefined表示”缺少值”,就是此处应该有一个值,但是还没有定义。典型用法是:
    (1)变量被声明了,但没有赋值时,就等于undefined。

    (2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。

    (3)对象没有赋值的属性,该属性的值为undefined。

    (4)函数没有返回值时,默认返回undefined。

    var i;
    i // undefined

    function f(x){console.log(x)}
    f() // undefined

    var o = new Object();
    o.p // undefined

    var x = f();
    x // undefined

相关文章

网友评论

    本文标题:[JavaScript]JavaScript中undefined

    本文链接:https://www.haomeiwen.com/subject/wuyqrftx.html