美文网首页JavaScript学习笔记
JavaScript学习笔记1_null和undefined

JavaScript学习笔记1_null和undefined

作者: 菜出意料 | 来源:发表于2019-11-10 13:06 被阅读0次

    undefined

    当我们试图访问某个未定义或未初始化的变量时,会得到一个undefined,JavaScript会自动将声明时没有进行初始化的变量设为undefined.

    1. 当试图使用一个不存在(未声明)的变量时,就会得到以下错误信息:
    foo
    
    image.png

    这时,在变量上使用typeof操作符,就会得到字符串"undefined"

    typeof foo
    
    image.png
    1. 如果我们声明一个变量时没有对其进行初始化(赋值),调用变量时并不会出错,但typeof操作符仍然会返回"undefined".
    var i;
    i;
    typeof i
    
    image.png

    null

    null不能通过JavaScript来自动赋值,只能通过写代码来完成,使用typeof操作符会得到"object"如:

    var k = null
    k
    typeof k
    
    image.png

    其他异同

    1. 执行某种算术运算符(+-*/%等)时,结果不同
    var i = 1 + undefined; i
    var i = 1 + null; i;
    
    image.png

    这是因为null和undefined在被转换为其他基本类型(numer, boolean, string)时存在一定的区别.

    转换为数字:

    1 * undefined
    1 * null
    
    image.png

    转换为布尔:

    !!undefined
    !!null
    
    image.png

    转换为字符串:

    '' + undefined
    '' + null
    
    image.png

    参考文献:JavaScript面向对象编程指南

    相关文章

      网友评论

        本文标题:JavaScript学习笔记1_null和undefined

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