阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JavaScript null和undefined的区别?

      知识点

      null是一个表示"无"的对象,转为数值时为0

      undefined是一个表示"无"的原始值,转为数值时为NaN

      当声明的变量还未被初始化时,变量的默认值为undefined

      null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象

      • null
        • 表示一个对象被定义了,值为“空值”;
      • undefined
        • 表示不存在这个值。

      undefined

      undefined表示 “缺少值”,就是此处应该有一个值,但是还没有定义。典型用法是:

      1. 变量被声明了,但没有赋值时,就等于 undefined
      2. 调用函数时,应该提供的参数没有提供,该参数等于 undefined
      3. 对象没有赋值的属性,该属性的值为 undefined
      4. 函数没有返回值时,默认返回 undefined
      typeof undefined
          //"undefined"
          // undefined :是一个表示"无"的原始值或者说表示"缺少值",就是此处应该有一个值,但是还没有定义。当尝试读取时会返回 undefined; 
          // 例如变量被声明了,但没有赋值时,就等于undefined
      

      null

      null表示“没有对象”,即该处不应该有值。典型用法是:

      1. 作为函数的参数,表示该函数的参数不是对象
      2. 作为对象原型链的终点

      注意:在验证null时,一定要使用 === ,因为 == 无法分别 null 和 undefined

      typeof null
          //"object"
          // null : 是一个对象(空对象, 没有任何属性和方法);
          // 例如作为函数的参数,表示该函数的参数不是对象;
      

      更多面试题

      如果你想了解更多的前端面试题,可以查看本站的WEB前端面试题 ,这里基本包涵了市场上的所有前端方面的面试题,也有一些大公司的面试图,可以让你面试更加顺利。

      面试题
      HTMLCSSJavaScript
      jQueryVue.jsReact
      算法HTTPBabel
      BootStrapElectronGulp
      Node.js前端经验相关前端综合
      Webpack微信小程序-

      这些题库还在更新中,如果你有不错的面试题库欢迎分享给我,我整理后放上来;人人为我,我为人人,互帮互助,共同提高,祝大家都拿到心仪的Offer!

      目录
      目录