null & undefined

理解
  1. null可以理解为变量指针指向了空对象
  2. undefined可以理解为指针指向不明确。undefined是派生自null的。

判断

  • null == undefined // true undefined是派生自null的。

typeof

  1. typeof null === 'object' // true 因为null是个指针指向空对象的变量
  2. 未声明的变量和声明了未赋值的变量使用 typeof 都返回 undefined
    var a;
    
    typeof a === 'undefined' //  true
    
    typeof b === 'undefined' //  true

undefined

  1. 任何时候不要给变量赋值为undefined,这样保证了所有值为undefined的变量都是未赋值。
  2. 判断undefined的时候尽量用 === ,而不是typeof,避免对未声明变量理解为未赋值。
  3. undefined不是关键字,取值的时候推荐用void 0,或者在全局 const undefined = void 0,锁定这个变量不被改变。 
发布了79 篇原创文章 · 获赞 9 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_33807889/article/details/105232312
今日推荐