- 'use strict';
- var log = Math.log, sqrt = Math.sqrt;
- module.exports = function (x) {
- if (isNaN(x)) return NaN;
- x = Number(x);
- if (x === 0) return x;
- if (!isFinite(x)) return x;
- if (x < 0) {
- x = -x;
- return -log(x + sqrt(x * x + 1));
- }
- return log(x + sqrt(x * x + 1));
- };
|