• JS高阶---简介+数据类型


    首先看下大概流程

     【一】基础

     接下来看下数据类型分类和判断

    (1)数据类型分类

    基本类型/值类型5种
      ---字符串String、数字Number、布尔值Boolean、未定义undefined、空null
    对象类型/引用类型
      ---Object(任意对象)
        Function(一种特别的对象,可以执行)
        Array(一种特别的对象,数值下标属性,内部数据是有序的)

    (2)判断数据类型

    typeof(可以判断undefined、数值、字符串、布尔值)
    instanceof(判断对象的具体类型,判断是函数还是数组... ...)
    ===(仅仅可以判断undefined和null)

      1、typeof返回数据类型的字符串表达式,注意"这里返回结果为字符串格式表达的数据类型",且都是小写

        

       2、所以验证undefined数据类型时必须注意,typeof返回的时数据类型的字符串表达式

       3、除了使用typeof还可以使用===严格运算符作比较,如下所示

         

       4、使用typeof判断null

        

          此时发现返回的是object,无法使用typeof判断null数据类型,这里需要用到===严格运算符

    console.log(y === null);//true

        此时发现可以用严格运算符===判断的数据类型包含两个,即undefined和null

        原因:这两个数据类型只有一个值

        

       5、接下俩判断复杂数据类型

        instanceof实例隶属于--判断实例对象是否隶属于构造函数

        

       6、万物皆对象  

        正如上面所说,Object是任意对象,Function是一种可以执行的特别的对象,而Array也是一种特别的对象,拥有数值下标,且内部数据是有序的

         

       7、判断函数数据类型还有其他方案,即typeof

        

        8、验证console.log数据类型

        //true

      

    (3)小结

      1、对象作用:存储数据

      2、数据也是特殊对象,有序性

      3、类型判断

        

    【二】相关问题

     (1)什么是实例?

      实例也叫实例对象,是由类型对象即构造函数实例化后得出的对象

      

     (2)undefined和null区别?

    1、undefined代表定义了未赋值
    2、null代表定义了,且赋值了,但是值为null

     (3)何时给变量赋值为null?

    注意:
    null为空,属于基本数据类型
    但typeof null为object

    自相矛盾... ...

    但是要从开发角度理解,例如b为对象,但是此时数据还没有过来,所以此时可以赋值为null,表示后期将要赋值为对象

     

     此时b便确定了对象赋值,最后如果再为null,则会释放该数据对象所占用的内存---即释放数据对象所占内存

    答案:---初始赋值和结束赋值

    (4)如何严格区别变量类型和数据类型?

      

     

    .

  • 相关阅读:
    2018年Q1增长最快的20个技能
    微信备份方法
    [转] 浅谈 OpenResty
    Angular默认路由策略-PathLocationStrategy策略页面刷新报404错误解决方案
    [转] ABP框架Web API跨域问题的解决方案
    [转] Win10插入U盘后双击无法打开,无法访问,显示设备未就绪;驱动哥帮你解决
    java jdk 8u191 官网下载地址
    IDEA 2019 注册码
    [JAVA] maven 阿里云节点 settings.xml
    .net webapi跨域 web.config配置
  • 原文地址:https://www.cnblogs.com/fightjianxian/p/11968029.html
Copyright © 2020-2023  润新知