]> git.r.bdr.sh - rbdr/dotfiles/blob - atom/packages/vim-mode/node_modules/grim/node_modules/emissary/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/shim.js
9c8c2360857e59436a339f871feb69cc8f3a6fac
[rbdr/dotfiles] / atom / packages / vim-mode / node_modules / grim / node_modules / emissary / node_modules / es6-weak-map / node_modules / es5-ext / math / expm1 / shim.js
1 // Thanks: https://github.com/monolithed/ECMAScript-6
2
3 'use strict';
4
5 var exp = Math.exp;
6
7 module.exports = function (x) {
8 if (isNaN(x)) return NaN;
9 x = Number(x);
10 if (x === 0) return x;
11 if (x === Infinity) return Infinity;
12 if (x === -Infinity) return -1;
13
14 if ((x > -1.0e-6) && (x < 1.0e-6)) return x + x * x / 2;
15 return exp(x) - 1;
16 };