# math.floor

Available in all subroutines.

Computes the largest integer value less than or equal to the given value.
In other words, round `x`

towards negative infinity.

For example, 2.2, 2.5, and 2.7 all floor to 2.0.

## Return Value

If `x`

is `math.NAN`

, a NaN will be returned.

If `x`

is integral, ±0, `x`

itself is returned.

If `x`

is `math.POS_INFINITY`

or
`math.NEG_INFINITY`

, an infinity
of the same sign is returned.

Otherwise, the rounded value of `x`

is returned.

## Try it out

`math.floor`

is used in the following code examples. Examples apply VCL to real-world use cases and can be deployed as they are, or adapted for your own service. See the full list of code examples for more inspiration.

Click RUN on a sample below to provision a Fastly service, execute the code on Fastly, and see how the function behaves.

### Geofencing / geoblocking content by region

Group countries to cache content by custom regions or reject requests from some regions entirely.