为什么typeof null是object呢?

typeof null输出object,是JS存在的一个悠久的bug.

原因在于JS初始版本使用的是32位系统,为了性能考虑使用低位存储变量的类型信息,而000开头代表的是对象,null表示全零,所以对象的类型被误判为object.虽然现在的内部类型判断代码已经改变了,但是对于这个Bug缺一直流传下来了

posted @ 2020-04-13 16:06  cheeliu  阅读(2099)  评论(0)    收藏  举报