dot*_*ack 5 javascript mozilla typeof type-conversion ecmascript-5
我的问题是关于Mozilla开发者页面:typeof operator
在示例章节中,每当完成以下表单的比较时,他们会对其进行注释:
typeof Number(1) === 'number'; // but never use this form!
Run Code Online (Sandbox Code Playgroud)
虽然他们从未解释过原因.很容易理解为什么这是一种愚蠢的类型检查方式,但我很好奇他们为什么多次不顾自己的评论.
任何线索都是受欢迎的.
注意:是因为Number()是一个没有new运算符的构造函数吗?(我的第一个猜测)
Ps:代码示例在Firefox的控制台版本27.0中进行了测试
正是因为缺乏new. 写入new Number(1)会创建一个值为 1 的 Number 对象。这很少需要。但是,Number(1) 不会创建 Number 对象 \xe2\x80\x94,而是返回数字 1。这很令人困惑(因为它在视觉上看起来像对象创建)并且没有必要,因为您可以直接编写1。
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |