JavaScript Number Methods

Number Methods and Properties

Number methods help you work with numbers. Primitive values (like 3.14 or 2014), cannot have properties and methods (because they are not objects). But with JavaScript, methods and properties are also available to primitive values, because JavaScript treats primitive values as objects when executing methods and properties.

The toString() Method

The toString() method returns a number as a string. All number methods can be used on any type of numbers (literals, variables, or expressions):

      
                    var x = 123;
x.toString();            // returns 123 from variable x
(123).toString();        // returns 123 from literal 123
(100 + 23).toString();   // returns 123 from expression 100 + 23
                    

The toExponential() Method

toExponential() returns a string, with a number rounded and written using exponential notation. A parameter defines the number of characters behind the decimal point:

The parameter is optional. If you don't specify it, JavaScript will not round the number.

      
                    var x = 9.656;
x.toExponential(2);     // returns 9.66e+0
x.toExponential(4);     // returns 9.6560e+0
x.toEXponential(6);     // returns 9.656000e+0
                    

The toFixed() Method

AtoFixed() returns a string, with the number written with a specified number of decimals. toFixed(2) is perfect for working with money.

      
                    var x = 9.656;
x.toFixed(0);           // returns 10
x.toFixed(2);           // returns 9.66
x.toFixed(4);           // returns 9.6560
x.toFixed(6);           // returns 9.656000
                    

The toPrecision() Method

toPrecision() returns a string, with a number written with a specified length:

      
                    var x = 9.656;
x.toPrecision();        // returns 9.656
x.toPrecision(2);       // returns 9.7
x.toPrecision(4);       // returns 9.656
x.toPrecision(6);       // returns 9.65600
                    

The valueOf() Method

valueOf() returns a number as a number. In JavaScript, a number can be a primitive value (typeof = number) or an object (typeof = object).

The valueOf() method is used internally in JavaScript to convert Number objects to primitive value. There is no reason to use it in your code. All JavaScript data types have a valueOf() and a toString() method.

      
                    var x = 123;
x.valueOf();            // returns 123 from variable x
(123).valueOf();        // returns 123 from literal 123
(100 + 23).valueOf();   // returns 123 from expression 100 + 23
                    

Converting Variables to Numbers

There are 3 JavaScript methods that can be used to convert variables to numbers:

  • The Number() method
  • The parseInt() method
  • The parseFloat() method

These methods are not number methods, but global JavaScript methods.

The Number() Method

Number() can be used to convert JavaScript variables to numbers:

      
                    Number(true);          // returns 1
Number(false);         // returns 0
Number("10");          // returns 10
Number("  10");        // returns 10
Number("10  ");        // returns 10
Number(" 10  ");       // returns 10
Number("10.33");       // returns 10.33
Number("10,33");       // returns NaN
Number("10 33");       // returns NaN
Number("John");        // returns NaN
                    

The Number() Method Used on Dates

Number() can also convert a date to a number:

      
                    Number(new Date("2017-09-30"));    // returns 1506729600000
                    

The parseInt() Method

parseInt() parses a string and returns a whole number. Spaces are allowed. Only the first number is returned. If the number cannot be converted, NaN (Not a Number) is returned.

      
                    parseInt("10");         // returns 10
parseInt("10.33");      // returns 10
parseInt("10 20 30");   // returns 10
parseInt("10 years");   // returns 10
parseInt("years 10");   // returns NaN
                    

The parseFloat() Method

parseFloat() parses a string and returns a number. Spaces are allowed. Only the first number is returned:

      
                    parseInt("10");         // returns 10
parseFloat("10.33");     // returns 10.33
parseFloat("10 20 30");  // returns 10
parseFloat("10 years");  // returns 10
parseFloat("years 10");  // returns NaN
                    

JavaScript MIN_VALUE and MAX_VALUE

MAX_VALUE returns the largest possible number in JavaScript. MIN_VALUE returns the lowest possible number in JavaScript.

      
                    var x = Number.MAX_VALUE;
var x = Number.MIN_VALUE;
                    

JavaScript POSITIVE_INFINITY

POSITIVE_INFINITY is returned on overflow:

      
                    var x = Number.POSITIVE_INFINITY;
                    

JavaScript NEGATIVE_INFINITY

NEGATIVE_INFINITY is returned on overflow:

      
                    var x = Number.NEGATIVE_INFINITY;
                    

JavaScript NaN - Not a Number

NaN is a JavaScript reserved word indicating that a number is not a legal number. Trying to do arithmetic with a non-numeric string will result in NaN (Not a Number):

      
                    var x = Number.NaN;
                    
      
                    var x = 100 / "Apple";  // x will be NaN (Not a Number)
                    

Number Properties Cannot be Used on Variables

Number properties belongs to the JavaScript's number object wrapper called Number.

These properties can only be accessed as Number.MAX_VALUE. Using myNumber.MAX_VALUE, where myNumber is a variable, expression, or value, will return undefined:

      
                    var x = 6;
var y = x.MAX_VALUE;    // y becomes undefined
                    

The Number object represents numerical date, either integers or floating-point numbers. In general, you do not need to worry about Number objects because the browser automatically converts number literals to instances of the number class.

In the place of number, if you provide any non-number argument, then the argument cannot be converted into a number, it returns NaN (Not-a-Number).

      
                    var val = new Number(number);
                    

Dess App

DessApp is an Integrated E-learning Education, Interactive and User-friendly features, smarter options and redefining your school costs effectively and efficiently.

View
1 1