typeof null返回值为什么是object?

复制代码
 function isObject(type){
     return (typeof type)=='object'?true:false
    }
   console.log('isObject(null)',isObject(null)) 

是第一版本的JavaScript的问题,使用32位表示一个变量,其中前3位代表值的类型,000 表示对象,010 表示浮点数,100 表示字符串,110 表示布尔值,和其他的值都被认为是指针。,在这种情况下null被解释为000的指针,即被认为是一个空对象引用,因此typeof null的结果为object,属于历史遗留问题

这是 JavaScript 语言的一个历史遗留问题。

因为 null 的类型标签是 000,与 object 的类型标签一样。 所以 typeof null 被判定为 "object"

相关推荐
Lee川1 分钟前
打字机是怎么炼成的:Chat 流式输出深度解析
前端·后端·面试
前端若水5 分钟前
过渡(transition)高级:贝塞尔曲线、硬件加速
前端·css·css3
Lee川7 分钟前
Token 无感刷新与 Logout:前端安全会话管理实战
前端·后端·react.js
不会敲代码19 分钟前
我写了一个 HTML 文件,把 JS 事件循环彻底搞懂了
前端·javascript·面试
feng_blog668814 分钟前
C++线程池|解决死锁、崩溃、丢任务所有痛点
java·开发语言·c++
写不来代码的草莓熊17 分钟前
SVG 图标插件误读 PNG 图片 + Vite 重启缓存失效重新生成 + 浏览器严格渲染
前端
天天进步201521 分钟前
魔音漫创源码解析:状态管理——复杂长链路下的状态同步:Zustand 在多面板协作中的应用
开发语言·架构
燐妤23 分钟前
前端HTML编程3:初识CSS
前端·html5
UXbot25 分钟前
独立设计师UI设计工具推荐(2026):支持AI原型生成与代码导出的5款工具全面评价
前端·人工智能·低代码·ui·交互·产品经理·web app
anOnion1 小时前
构建无障碍组件之Table Pattern
前端·html·交互设计