JavaScript 有哪些数据类型?如何准确判断类型?

发布时间:2026/10/5 9:08:05
JavaScript 有哪些数据类型?如何准确判断类型? 核心思路一句话JavaScript 有8 种数据类型7 种原始类型 1 种对象类型类型判断不能“一招通吃”应根据场景选择typeof、 null、Array.isArray()、instanceof和Object.prototype.toString.call()。一、数据类型JavaScript 数据类型 │ ├── 原始类型 │ ├── undefined │ ├── null │ ├── boolean │ ├── number │ ├── string │ ├── symbol │ └── bigint │ └── Object ├── Object ├── Array ├── Date ├── RegExp ├── Map ├── Set └── Function二、类型判断怎么选判断值的类型 │ ┌────────────┴────────────┐ ↓ ↓ 原始类型/函数 对象具体类型 │ │ typeof ┌────────┼─────────┐ │ ↓ ↓ ↓ │ 数组 实例关系 内置类型 │ │ │ │ │ Array.isArray instanceof Object.prototype.toString │ ↓ null 特殊处理 │ value null三、核心区别typeof适合判断基础类型和函数但null返回object数组和普通对象也都是object。 null准确判断null。Array.isArray()判断数组的首选方案。instanceof判断对象的原型链上是否存在某个构造函数的prototype。Object.prototype.toString.call()可以进一步区分Array、Date、RegExp、Map、Set等内置对象。四、必须记住的几个坑typeofnullobject;typeof[]object;typeof{}object;typeoffunction(){}function;[]instanceofObjecttrue;其中[]instanceofObject是因为数组的原型链是[] ↓ Array.prototype ↓ Object.prototype ↓ null五、底层原理typeof是语言提供的类型判断运算符。instanceof核心是检查原型链value ↓ value 的原型 ↓ 继续向上查找 ↓ 是否找到 Constructor.prototypeObject.prototype.toString.call(value)则利用Object.prototype.toString对值进行类型标签判断可以得到[object Array] [object Date] [object Map] [object Set]注意Object.prototype.toString.call()可以用于区分很多具体对象类型但它的类型标签可以通过Symbol.toStringTag定制因此不能简单理解成绝对可靠、不可伪造的类型判断。六、实际开发原则判断 null → value null 判断数组 → Array.isArray(value) 判断基础类型和函数类型 → typeof value 判断某个类的实例 → value instanceof Constructor 判断具体内置对象 → Object.prototype.toString.call(value)一句话总结不要问“哪一种类型判断方法最准确”而要问“当前场景需要判断什么”。typeof负责基础类型Array.isArray负责数组instanceof负责原型链上的实例关系Object.prototype.toString.call负责进一步识别对象类型null则必须单独用 null判断。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询