TypeScript like JavaScript supports numeric values as Number objects. A numbers object converts numeric literal to an instance of the number class. The Numbers class acts as a wrapper and enables manipulation of numeric literals as they were objects.
Syntax
var var_name = new Number(value)
In case a non-numeric argument is passed as an argument to the Number’s constructor, it returns NaN (Not–a–Number)
The following table lists a set of properties of the Number object −
S.No. | Property & Description |
---|---|
1. | MAX_VALUEThe largest possible value a number in JavaScript can have 1.7976931348623157E+308. |
2. | MIN_VALUEThe smallest possible value a number in JavaScript can have 5E-324. |
3. | NaNEqual to a value that is not a number. |
4. | NEGATIVE_INFINITYA value that is less than MIN_VALUE. |
5. | POSITIVE_INFINITYA value that is greater than MAX_VALUE. |
6. | prototypeA static property of the Number object. Use the prototype property to assign new properties and methods to the Number object in the current document. |
7. | constructorReturns the function that created this object’s instance. By default, this is the Number object. |
Example
console.log("TypeScript Number Properties: "); console.log("Maximum value that a number variable can hold: " + Number.MAX_VALUE); console.log("The least value that a number variable can hold: " + Number.MIN_VALUE); console.log("Value of Negative Infinity: " + Number.NEGATIVE_INFINITY); console.log("Value of Negative Infinity:" + Number.POSITIVE_INFINITY);
On compiling, it will generate the same code in JavaScript.
Its output is as follows −
TypeScript Number Properties: Maximum value that a number variable can hold: 1.7976931348623157e+308 The least value that a number variable can hold: 5e-324 Value of Negative Infinity: -Infinity Value of Negative Infinity:Infinity
Example: NaN
var month = 0 if( month<=0 || month >12) { month = Number.NaN console.log("Month is "+ month) } else { console.log("Value Accepted..") }
On compiling, it will generate the same code in JavaScript.
Its output is as follows −
Month is NaN
Example: prototype
function employee(id:number,name:string) { this.id = id this.name = name } var emp = new employee(123,"Smith") employee.prototype.email = "smith@abc.com" console.log("Employee 's Id: "+emp.id) console.log("Employee's name: "+emp.name) console.log("Employee's Email ID: "+emp.email)
On compiling, it will generate the following JavaScript code −
//Generated by typescript 1.8.10 function employee(id, name) { this.id = id; this.name = name; } var emp = new employee(123, "Smith"); employee.prototype.email = "smith@abc.com"; console.log("Employee 's Id: " + emp.id); console.log("Employee's name: " + emp.name); console.log("Employee's Email ID: " + emp.email);
Its output is as follows −
Employee’s Id: 123 Emaployee’s name: Smith Employee’s Email ID: smith@abc.com
Number Methods
The Number object contains only the default methods that are a part of every object’s definition. Some of the commonly used methods are listed below −
S.No. | Methods & Description |
---|---|
1. | toExponential() Forces a number to display in exponential notation, even if the number is in the range in which JavaScript normally uses standard notation. |
2. | toFixed() Formats a number with a specific number of digits to the right of the decimal. |
3. | toLocaleString() Returns a string value version of the current number in a format that may vary according to a browser’s local settings. |
4. | toPrecision() Defines how many total digits (including digits to the left and right of the decimal) to display of a number. A negative precision will throw an error. |
5. | toString() Returns the string representation of the number’s value. The function is passed the radix, an integer between 2 and 36 specifying the base to use for representing numeric values. |
6. | valueOf() Returns the number’s primitive value. |