zoukankan      html  css  js  c++  java
  • 1、数据类型的分类与判断

    分类

    • 基本(值)类型
      • String: 任意字符串
      • Number: 任意的数值,三个特殊值: Infinity, -Infinity, NaN.
      • Boolean: true/false
      • undefined: undefined, 变量声明未赋值, is reserved as a default initial value for unassigned things.
      • null: null,表示“nothing”, “empty”, “value unknown”.
    • 对象(引用)类型
      • Object: 任意对象
      • Function: 一种特殊的对象(可执行)
      • Array: 一种特殊的对象(数值下标, 内部数据有序)

    判断

    typeof

    返回数据类型的字符串表达形式(小写),支持两种语法:

    • 作为操作符: typeof x
    • 作为函数: typeof(x)
    typeof undefined // "undefined"
    typeof 0 // "number"
    typeof 10n // "bigint"
    typeof true // "boolean"
    typeof "foo" // "string"
    typeof Symbol("id") // "symbol" ?
    typeof Math // "object"
    
    typeof null // "object", 无法区分 null 与 object 类型
    typeof [1,2] // "object", 无法区分 array 与 object 类型
    typeof alert // "function",可以区分 function 与 object 类型
    

    instanceof

    专门用来判断对象数据的类型: Object, Array 与 Function

    ===

    只能判断具有唯一值的类型,即: undefined, null


    相关问题

    1、什么时候给变量赋值为null?

    • var a = null //初始赋值, 表明将要赋值为对象
    • a = null //结束前, 让对象成为垃圾对象(被垃圾回收器回收)

    2、严格区别变量类型与数据类型?

    变量本身是没有类型的, 变量的类型实际上是变量内存中数据的类型

    • 变量的类型(变量内存值的类型)
      • 基本类型: 保存就是基本类型的数据
      • 引用类型: 保存的是对象的地址值
    • 数据的类型
      • 基本类型
      • 对象类型
  • 相关阅读:
    解决Spring+Quartz无法自动注入bean问题
    MacBook PRO蓝牙无法搜索设备
    解决HP打印机错误:Couldn't open fifo
    SQL调优
    ALTER SEQUENCE 修改序列解决唯一约束冲突 unique constraint violated
    Linux Unix 环境变量设置实例
    DB2解除锁表
    ExtJS远程数据-本地分页
    安装mysql
    celery使用
  • 原文地址:https://www.cnblogs.com/jiaoran/p/13456824.html
Copyright © 2011-2022 走看看