zoukankan      html  css  js  c++  java
  • js基础面试高频面点2:Javascript中undefined和not defined有什么区别,和null又有什么联系?

    二、Javascript中undefined和not defined有什么区别?

      一句话:udefined为变量正常的数据类型,不是报错,而not defined是指变量没有定义,是报错。

      那么,什么是数据类型?js中数据类型有哪些?

      数据类型在数据结构中的定义是一组性质相同的值的集合以及定义在这个值集合上的一组操作的总称

      js中变量的数据类型有:

        值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。

        引用数据类型:对象(Object)、数组(Array)、函数(Function)。

        

        

        这个结果说明:

        1、数组和对象的类型都是object。

        2、用typeof只能检测出null为object。

        什么意思呢?

        null是什么东西?是值还是数据类型?什么值的数据类型是null?null和undefine究竟有什么千丝万缕的联系?

        在下认为:null可以是值,也可以是数据类型,null表示一个空对象的引用,对象的原型最终指向null。对于null的类型为object,这是js设计之初的历史  bug,可参考:http://2ality.com/2013/10/typeof-null.html,而null和undefined的值是相等的,但类型不同,所以:

        alert(null == undefined); // true
        alert(null === undefined); // false
        

        补充:
        
        

      

  • 相关阅读:
    还能这样偷懒?用Python实现网站自动签到脚本
    普通爬虫 VS 多线程爬虫!Python爬虫运行时间对比
    中文文献阅读方法及笔记模板
    约束
    可迭代对象补充
    练习题及补充
    内置函数的补充/super/异常值处理
    特殊成员
    嵌套
    面向对象知识点总结补充
  • 原文地址:https://www.cnblogs.com/dancer0321/p/10846157.html
Copyright © 2011-2022 走看看