undefined的特点

undefined也是一个原始值数据,我的理解是,当一个声明了但是未初始化的变量会默认赋值为字符串“undefined”

    <script>
        let num;
        console.log(num)//undefined
    </script>
当我们直接输出全局window对象时,就可以找到undefined的存在,当然也可以直接输出window.undefined得到undefined
<script>
       console.log(window);
       console.log(window.undefined);//undefined
    </script>
以下操作虽然使用delete操作想将undefined删除,但是达不到效果,使用delete操作后,再次输出undefined依然可行
 <script>
       delete window.undefined;
       console.log(undefined);//undefined
    </script>
在全局作用域中,undefined不可以重新赋值,即使重新赋值了,但是无效,在全局中输出的依然是undefined
<script>
      window.undefined=1;
      console.log(window.undefined);//undefined
  </script>

但是在局部作用域中,可以将undefined作为变量名重新赋值,但是不建议这么做。

以下fun函数执行输出结果为2

  <script>
    function fun(){
        let undefined=2;
        console.log(undefined)//2
    }
    fun();
  </script>
 
posted @ 2021-12-18 20:14  李小聪明  阅读(228)  评论(0)    收藏  举报