Number
This creates number objects:
> var n = new Number(101); > typeof n; "object" > n.valueOf(); 101
The Number
objects are not primitive objects, but if you use any Number.prototype
method on a primitive number, the primitive will be converted to a Number
object behind the scenes and the code will work.
> var n = 123; > typeof n; "number" > n.toString(); "123"
Used without new
, the Number
constructor returns a primitive number.
> Number("101"); 101 > typeof Number("101"); "number" > typeof new Number("101"); "object"
Members of the Number constructor
Property/method |
Description |
---|---|
|
A constant property (cannot be changed) that contains the maximum allowed number. > Number.MAX_VALUE;
1.7976931348623157e+308
|
|
The smallest number you can work with in JavaScript. > Number.MIN_VALUE;
5e-324
|
|
Contains the Not A Number number. The same as the global NaN. > Number.NaN;
NaN
NaN is not equal to anything including itself. > Number.NaN === Number.NaN;
false
|
|
The same as the global |
|
The same as |
The Number.prototype members
Property/method |
Description |
---|---|
|
Returns a string with the fixed-point representation of the number. Rounds the returned value. > var n = new Number(Math.PI); > n.valueOf(); 3.141592653589793 > n.toFixed(3); "3.142" |
|
Returns a string with exponential notation representation of the number object. Rounds the returned value. > var n = new Number(56789);
> n.toExponential(2);
"5.68e+4"
|
|
String representation of a number object, either exponential or fixed-point, depending on the number object. > var n = new Number(56789); > n.toPrecision(2); "5.7e+4" > n.toPrecision(5); "56789" > n.toPrecision(4); "5.679e+4" > var n = new Number(Math.PI); > n.toPrecision(4); "3.142" |