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.

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_VALUE

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

2.

MIN_VALUE

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

3.

NaN

Equal to a value that is not a number.

4.

NEGATIVE_INFINITY

A value that is less than MIN_VALUE.

5.

POSITIVE_INFINITY

A value that is greater than MAX_VALUE.

6.

prototype

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.

7.

constructor

Returns 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.