前端 JS 经典:typeof 和 instanceof 区别

1. typeof

typeof 用于判断一个变量的数据类型,返回一个表示数据类型的字符串。可以对如下类型进行判断:undefined、boolean、number、string、bigint、symbol、function 和 object。对 null 的判断是'object',这是个历史遗留问题。

javascript 复制代码
typeof null; // 'object'
typeof undefined; // 'undefined'
typeof true; // 'boolean'
typeof 110; // 'number'
typeof "yqcoder"; // 'string'
typeof function () {}; // 'function'
typeof {}; // 'object'
typeof []; // 'object'
typeof 9007199254740999n; // 'bigint'
typeof Symbol(); // 'symbol'

2. instanceof

instanceof 用于判断一个对象是否属于某个类或者其父类的实例。如果对象是指定类的实例,则返回 true;否则返回 false。

javascript 复制代码
const time = new Date();
const reg = /^yqcoder$/;

time instanceof Date; // true
reg instanceof RegExp; // true

综上:typeof 用于判断基本数据类型和函数类型,而 instanceof 用于判断对象是否属于某个类的实例。

相关推荐
liu****1 分钟前
5.C语言数组
c语言·开发语言·c++
养乐多07221 分钟前
【Java】异常
java·开发语言
froginwe113 分钟前
PHP 包含
开发语言
Antonio9158 分钟前
【Swift】 Swift 基础语法:变量、类型、分支与循环
开发语言·swift
T***u33310 分钟前
Java机器学习框架
java·开发语言·机器学习
程序员-周李斌23 分钟前
Java SPI(JDK 内置服务发现机制)
java·开发语言·开源软件
IT_陈寒31 分钟前
Python性能提升50%:这5个隐藏技巧让你的代码快如闪电⚡
前端·人工智能·后端
懒人村杂货铺39 分钟前
微前端QianKun的使用以及坑点问题
前端
qq_3665775142 分钟前
Vue3创建项目,只能localhost访问问题处理
前端·javascript·vue.js
5***o5001 小时前
JavaScript云原生
开发语言·javascript·云原生