The toFixed()
method formats a number using fixed-point notation.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
numObj.toFixed([digits])
Parameters
digits
Optional- The number of digits to appear after the decimal point; this may be a value between
0
and20
, inclusive, and implementations may optionally support a larger range of values. If this argument is omitted, it is treated as0
.
Return value
A string representing the given number using fixed-point notation.
Exceptions
RangeError
- If
digits
is too small or too large. Values between0
and100
, inclusive, will not cause aRangeError
. Implementations are allowed to support larger and smaller values as chosen. TypeError
- If this method is invoked on an object that is not a
Number
.
Description
toFixed()
returns a string representation of numObj
that does not use exponential notation and has exactly digits
digits after the decimal place. The number is rounded if necessary, and the fractional part is padded with zeros if necessary so that it has the specified length. If the absolute value of numObj
is greater or equal to 1e+21
, this method simply calls Number.prototype.toString()
and returns a string in exponential notation.
Warning: Floating point numbers cannot represent all decimals precisely in binary. This can lead to unexpected results, such as 0.1 + 0.2 === 0.3
returning false
.
Examples
Using toFixed
let numObj = 12345.6789 numObj.toFixed() // Returns '12346': note rounding, no fractional part numObj.toFixed(1) // Returns '12345.7': note rounding numObj.toFixed(6) // Returns '12345.678900': note added zeros (1.23e+20).toFixed(2) // Returns '123000000000000000000.00' (1.23e-10).toFixed(2) // Returns '0.00' 2.34.toFixed(1) // Returns '2.3' 2.35.toFixed(1) // Returns '2.4'. Note it rounds up 2.55.toFixed(1) // Returns '2.5'. Note it rounds down - see warning above -2.34.toFixed(1) // Returns -2.3 (due to operator precedence, negative number literals don't return a string...) (-2.34).toFixed(1) // Returns '-2.3'
Specifications
Specification |
---|
ECMAScript (ECMA-262) The definition of 'Number.prototype.toFixed' in that specification. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
toFixed | Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 5.5 | Opera Full support 7 | Safari Full support 2 | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support 10.1 | Safari iOS Full support 1 | Samsung Internet Android Full support 1.0 | nodejs Full support 0.1.100 |
Legend
- Full support
- Full support