“var n = Number(3);”工作?

时间:2014-02-27 03:05:52

标签: javascript

我错误地使用了var n=Number(3);(我应该使用var n=new Number(3);),但我得到了n = 3。由于Number()是一个对象构造函数,谁可以解释这个?

2 个答案:

答案 0 :(得分:6)

对象构造函数也是一个函数。

Number MDN doc作为函数可用于转换为基本类型编号。

> Number(3)
  3
> Number("3")
  3
> Number("A")
  NaN
> Number("2e2")
  200
> Number("0xff")
  255
> ["1", "2", "3"].map(Number)
  [1, 2, 3]

答案 1 :(得分:1)

MDN解释说:

  

描述

     

Number对象的主要用途是:

     
      
  • 如果参数无法转换为数字,则返回NaN。
  •   
  • 在非构造函数上下文中(即没有new运算符), Number可用于执行类型转换。
  •