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"

相关推荐
耶啵奶膘4 分钟前
uni-app头像叠加显示
开发语言·javascript·uni-app
chéng ௹5 分钟前
uniapp 封装uni.showToast提示
前端·javascript·uni-app
看海天一色听风起雨落10 分钟前
Python学习之装饰器
开发语言·python·学习
Want59516 分钟前
C/C++圣诞树①
c语言·开发语言·c++
生擒小朵拉20 分钟前
STM32添加库函数
java·javascript·stm32
老赵的博客27 分钟前
c++ 杂记
开发语言·c++
jimmy.hua30 分钟前
[C++刷怪笼]:set/map--优质且易操作的容器
开发语言·c++
tuokuac34 分钟前
nginx配置前端请求转发到指定的后端ip
前端·tcp/ip·nginx
程序员爱钓鱼38 分钟前
Go语言实战案例-开发一个Markdown转HTML工具
前端·后端·go
万少1 小时前
鸿蒙创新赛 HarmonyOS 6.0.0(20) 关键特性汇总
前端