乐趣区

Undefined和Null

js 中一共有 5 种简单数据类型:Undefined, Null, boolean, Number, String. 还有一种复杂的数据类型:Object.
本篇主要介绍 Undefined 和 Null

Undefined

一个变量如果没有初始化赋值 则该变量的值就是 undefined

let msg;  // msg == undefinde;

没有必要给一个变量赋值为 undefined

undefined 有一些会让人困惑的东西

比如:直接调用未声明的变量会报错

alert(age);   // 报错

但是:typeof 一个未声明的变量会返回 undefined

alert(typeof age);   //"undefined"

Null

null 表示的是一个对象的空指针.

let obj = null;
alert(typeof obj);  //"object"

总结

  • Undefined 和 Null 都是只有一个值得数据类型
  • undefined 和 Null 相等
null== undefined;  //true
  • undefined 表明变量未赋值(typeof 时也可能是变量不存在)
  • null 用于表明该变量是一个对象的空指针 ( 与{}不同)
退出移动版