TypeScript - Numbers


TypeScript like JavaScript supports numeric values as Number objects. A number object converts numeric literal to an instance of the number class. The Number class acts as a wrapper and enables manipulation of numeric literals as they were objects.


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


The largest possible value a number in JavaScript can have 1.7976931348623157E+308.



The smallest possible value a number in JavaScript can have 5E-324.



Equal to a value that is not a number.



A value that is less than MIN_VALUE.



A value that is greater than MAX_VALUE.



A static property of the Number object. Use the prototype property to assign new properties and methods to the Number object in the current document.



Returns the function that created this object's instance. By default, this is the Number object.


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.