blob: 3a14c0731177f3ff0def9edcf1e8ead1d04d95fe [file] [log] [blame]
var nativeExpm1 = Math.expm1;
var exp = Math.exp;
// `Math.expm1` method implementation
// https://tc39.github.io/ecma262/#sec-math.expm1
module.exports = (!nativeExpm1
// Old FF bug
|| nativeExpm1(10) > 22025.465794806719 || nativeExpm1(10) < 22025.4657948067165168
// Tor Browser bug
|| nativeExpm1(-2e-17) != -2e-17
) ? function expm1(x) {
return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : exp(x) - 1;
} : nativeExpm1;