极客时间返利平台,你可以在上边通过山月的链接购买课程,并添加我的微信 (shanyue94) 领取返现。

# typeof 与 instanceof 的区别

Issue

欢迎在 Gtihub Issue 中回答此问题: Issue 461 (opens new window)

  1. typeof 用以判断基础数据类型 (null 除外)
  2. instanceOf 借助原型链判断复杂数据类型

如以下示例:

> typeof 3
< "number"
> [] instanceof Array
< true

typeof 能够准确检查除了 null 之外的基础数据类型(number, string, symbol, bigInt, undefined, boolean, null)

> typeof null
"object"

instanceof 的语义是检查操作符右边的函数原型是否存在于左边对象的原型链中

知识来源: JavaScript 忍者秘籍 (opens new window)

typeof 能够准确检查除了 null 之外的基础数据类型(number, string, symbol, bingInt, undefined, boolean, null)

> typeof null
"object"

instanceof 的语义是检查操作符右边的函数原型是否存在于左边对象的原型链中

知识来源: JavaScript 忍者秘籍 (opens new window)

@liweinandever 真是学习了,今天我才注意到 bigint 也是基本数据类型,见文档 Primitive (opens new window),另外你这里的 bigint 有个 typoerror

Last Updated: 11/27/2021, 6:11:48 PM