Floating point number precision in JavaScript
The representation of floating points in JavaScript follows the IEEE-754 format. It is a double-precision format where 64 bits are allocated for every floating point.
The displaying of these floating values could be handled using these methods:
Table of Content
- Using toFixed() Method
- Using toPrecision() Method
- Using toExponential() Method
Using toFixed() Method
The number of decimal places in float values can be set using the toFixed() method. This method converts the number into a string, keeping the specified number of digits after the point. If no value is passed as a parameter, then it takes 0 as the default value i.e. no decimal points are displayed.
Syntax:
number.toFixed(digits)
Example: This example shows the use of the toFixed() method.
Javascript
pi = 3.14159265359; twoPlaces = pi.toFixed(2); fivePlaces = pi.toFixed(5); console.log(twoPlaces); console.log(fivePlaces); |
3.14 3.14159
Using toPrecision() Method
The number of total digits in float values can be set using the toPrecision() method. This method converts the number into a string, keeping the total number of digits of the value as specified and rounding them to the nearest number. If no value is passed as a parameter, then the function acts as a toString() function effectively returning the value passed as a string.
Syntax:
number.toPrecision(precision);
Example: This example shows the use of the toPrecision() method.
Javascript
pi = 3.14159265359; twoPlaces = pi.toPrecision(2); fivePlaces = pi.toPrecision(5); console.log(twoPlaces); console.log(fivePlaces); |
3.1 3.1416
Using toExponential() Method
JavaScript Number toExponential() method is used to convert a number to its exponential form. It returns a string representing the Number object in exponential notation. The toExponential() method is used with a number as shown in the above syntax using the ‘.’ operator. This method will convert a number to its exponential form.
Syntax:
number.toExponential(value)
Example: toExponential(2)
represents the number 12345.6789
in exponential notation with 2 digits of precision. The output might look like 1.23e+4
, where 1.23
is the significand and 4
is the exponent.
Javascript
const myNumber = 12345.6789; // Using toExponential with precision const exponentialNotation = myNumber.toExponential(2); console.log(exponentialNotation); |
1.23e+4
Contact Us