@lvlte/ulp
Version: 
Compute the unit in last place of a given IEEE-754 64-bit number
41 lines (30 loc) • 994 B
Markdown
> Compute the [unit of least precision](https://en.wikipedia.org/wiki/Unit_in_the_last_place)
of a given IEEE-754 64-bit number.
```sh
npm install @lvlte/ulp
```
```js
// ESM
import { eps } from '@lvlte/ulp';
```
```js
// CJS
const { eps } = require('@lvlte/ulp');
```
```js
console.log(eps());                             // 2.220446049250313e-16
console.log(eps() === eps(1));                  // true
console.log(eps() === Number.EPSILON);          // true
console.log(eps(Number.MAX_SAFE_INTEGER));      // 1
console.log(eps(Number.MAX_SAFE_INTEGER + 1));  // 2
console.log(eps(0));                            // 5e-324
console.log(eps(0) === Number.MIN_VALUE);       // true
console.log(eps(Infinity));                     // NaN
```
- Check whether two floating point numbers can be considered equal.
- Approximate a floating point number x as a rational number.
- Get the next/previous float on the float64 number line.