a=1和a=new Number()之间的差异

difference between a = 1 and a = new Number()

本文关键字:之间 Number new      更新时间:2023-09-26

var a和var a=new Number()以及后来将a的值分配给1 之间有什么区别

当得到安慰时,我看到一个是未定义的,一个有数字{}。随着实施的进展,最显著的差异是什么。

区别在于不应该使用new Number()
new Number创建一个对象,当你为它指定其他值时,它将被覆盖。另一个只创建一个基元。

使用Number的唯一原因是将字符串解析为数值:

var a = Number("1e20"),
    b = Number("1.6");

(请记住还有parseIntparseFloat。)

或者访问几个常量:

var biggestNum = Number.MAX_VALUE;
var smallestNum = Number.MIN_VALUE;
var infiniteNum = Number.POSITIVE_INFINITY;
var negInfiniteNum = Number.NEGATIVE_INFINITY;
var notANum = Number.NaN;

不要使用Number作为这样的声明。这样做真的没有意义。

如果你只是为变量分配数值,而没有任何解析,只需分配它们:

var a = 5,
    b = 5234;

Number()允许您解析字符串或其他变量类型,这并不意味着声明,因为变量在javascript中没有类型。

http://www.w3schools.com/jsref/jsref_number.asp