Open
Description
Is your feature request related to a problem? Please describe.
Converts value
to a finite number.
Describe the solution you'd like
toFinite(3.2); // => 3.2
toFinite(Number.MIN_VALUE); // => 5e-324
toFinite(Infinity); // => 1.7976931348623157e+308
toFinite('3.2'); // => 3.2
Possible implementation:
const toFinite = curry1((value) {
if (!value) return value === 0 ? value : 0;
const result = toNumber(value);
if (!isFinite(result)) {
const sign = (value < 0 ? -1 : 1);
return sign * Number.MAX_SAFE_INTEGER;
}
return result === result ? result : 0;
});
Describe alternatives you've considered
--
Additional context
Currently blocked by toNumber issue.