使用typeof null
得到的null是object
.所以,它是一个对象???
先看一个小栗子.
前提:引用W3school
Boolean() 函数
当要转换的值是至少有一个字符的字符串、非 0 数字或对象时,Boolean() 函数将返回 true。
提问:
既然typeof null
返回的是object
,而且Boolean()
转换对象会得到true
,然而Boolean(null)
却是false
呢?
W3school解释:
知乎解释:
- null不是一个空引用, 而是一个原始值; 它只是期望此处将引用一个对象, 注意是"期望", typeof null结果是object, 这是个历史遗留bug. 在ECMA6中, 曾经有提案为历史平反, 将type null的值纠正为null, 但最后提案被拒了. 理由是历史遗留代码太多, 不想得罪人, 不如继续将错就错当和事老.
总结:null是一个“期望”对象。
本文发布于:2024-02-02 22:15:37,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170688333746796.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |