前端 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 用于判断对象是否属于某个类的实例。

相关推荐
panxianren4 小时前
Bun 1.4 的 bun test --parallel 将 4 秒的测试套件缩短到约 1 秒
java·javascript
“AI国潮设计-小江”5 小时前
《Python+SDXL实战:用ControlNet精准控制“英歌舞翻糖吐司”构图,附批量生成脚本》
开发语言·人工智能·python·prompt·aigc
程序喵大人5 小时前
【C++入门】编译链接模型 - 01 一个 C++ 程序是怎样变成可执行文件的
开发语言·c++·编译链接模型
陈随易6 小时前
bm2,Node.js 与 Bun 项目部署新选择
前端·后端·程序员
可乐鸡翅yeah_7 小时前
FFmpeg 生成 HLS 独立分片 independent‑segments 参数到底有什么用
javascript·ffmpeg·音视频·safari·m3u8
sunshine22 girl7 小时前
Java学习七 Java 项目实战1-项目创建和主页面搭建
java·开发语言·学习
福兮说7 小时前
canvas 旋转图片的六个坑:四角被裁、Math.ceil 多出 1px 黑边、JPG 角发黑、翻转方向反了
前端·javascript·图像处理·canvas
菜鸟~noob2338 小时前
【电子战】第三季预告—波武器与电子系统强力毁伤
开发语言·数据库·matlab·电子战
Ai-_Man8 小时前
您您这可以把Grok的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。AI导出鸭
javascript·人工智能·ai·小程序·电脑
惊讶的猫8 小时前
工具选对之后还不够:商城 Agent 的参数与权限治理
开发语言·python