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
Consider the following 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. Same as the global NaN: > Number.NaN; NaN
NaN is not equal to anything including itself:
> Number.NaN === Number.NaN; false
|
|
Same as the global |
|
Same as |
The Number.prototype members
Following are the members of the Number
constructor:
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"
|