美文网首页程序员
JavaScript 中的 null 是一个对象吗

JavaScript 中的 null 是一个对象吗

作者: 老邵 | 来源:发表于2018-04-10 21:56 被阅读44次

    在 JavaScript 中,typeof 操作符返回一个对象,表示未经计算的操作数的类型。

       console.log(typeof 1); //number
    

    如果对 null 进行 typeof 操作,得到的结果是 object。因此,很多人将 null 当做 JavaScript 中的一个对象。然而事实是, typeof null = 'object' 只是 JavaScript 语言本身的一个 bug。

    编程语言最后的形式都是二进制,所以 JavaScript 中的对象在底层肯定也是以二进制表示的。如果底层有前三位都是零的二进制,就会被判定为对象。底层中 null 的二进制表示都是零。所以在对 null 的类型判定时,发现其二进制前三位都是零,因此判定为 object。

    Jason Blackeye 2017-06-27 01-10-06 .jpg

    相关文章

      网友评论

        本文标题:JavaScript 中的 null 是一个对象吗

        本文链接:https://www.haomeiwen.com/subject/ugoihftx.html