---
layout: default
---
Function floor #
Round a value towards minus infinity.
For matrices, the function is evaluated element wise.
Syntax #
```js
math.floor(x)
math.floor(x, n)
math.floor(unit, valuelessUnit)
math.floor(unit, n, valuelessUnit)
```
Parameters #
Parameter | Type | Description
--------- | ---- | -----------
`x` | number | BigNumber | Fraction | Complex | Unit | Array | Matrix | Value to be rounded
`n` | number | BigNumber | Array | Number of decimals Default value: 0.
`valuelessUnit` | Unit | A valueless unit
Returns #
Type | Description
---- | -----------
number | BigNumber | Fraction | Complex | Unit | Array | Matrix | Rounded value
Throws #
Type | Description
---- | -----------
Examples #
```js
math.floor(3.2) // returns number 3
math.floor(3.8) // returns number 3
math.floor(-4.2) // returns number -5
math.floor(-4.7) // returns number -5
math.floor(3.212, 2) // returns number 3.21
math.floor(3.288, 2) // returns number 3.28
math.floor(-4.212, 2) // returns number -4.22
math.floor(-4.782, 2) // returns number -4.79
const c = math.complex(3.24, -2.71)
math.floor(c) // returns Complex 3 - 3i
math.floor(c, 1) // returns Complex 3.2 -2.8i
const unit = math.unit('3.241 cm')
const cm = math.unit('cm')
const mm = math.unit('mm')
math.floor(unit, 1, cm) // returns Unit 3.2 cm
math.floor(unit, 1, mm) // returns Unit 32.4 mm
math.floor([3.2, 3.8, -4.7]) // returns Array [3, 3, -5]
math.floor([3.21, 3.82, -4.71], 1) // returns Array [3.2, 3.8, -4.8]
math.floor(math.tau, [2, 3]) // returns Array [6.28, 6.283]
// Note that floor(array, array) currently not implemented.
```
See also #
[ceil](ceil.html),
[fix](fix.html),
[round](round.html)