JavaScript Math expm1() function :
expm1() is defined in Math. It is a static method and you can call it directly like Math.expm1(). It takes one number as the argument and returns e^n - 1, where n is the provided number. That means, its value is equal to Math.exp(n) - 1.
Example of Math.expm1 :
Let’s consider the below example :
console.log(Math.expm1(0));
console.log(Math.expm1(1));
console.log(Math.expm1(Math.E));
console.log(Math.expm1(-10));
Run it and it will print the below output :
0
1.718281828459045
14.154262241479262
-0.9999546000702375
Math.expm1() and Math.exp() :
Let’s compare Math.expm1 and Math.exp :
console.log(`${Math.expm1(0)} = ${Math.exp(0) - 1}` );
console.log(`${Math.expm1(1)} = ${Math.exp(1) - 1}` );
console.log(`${Math.expm1(Math.E)} = ${Math.exp(Math.E) - 1}` );
console.log(`${Math.expm1(-10)} = ${Math.exp(-10) - 1}` );
It will print :
0 = 0
1.718281828459045 = 1.718281828459045
14.154262241479262 = 14.154262241479262
-0.9999546000702375 = -0.9999546000702375
So, Math.expm1 is equal to Math.exp minus 1 for a number.
Math.expm1 with different types :
For the below example :
console.log(Math.expm1("2"));
console.log(Math.expm1(2.4));
console.log(Math.expm1("2.4"));
console.log(Math.expm1(null));
console.log(Math.expm1(undefined));
console.log(Math.expm1());
console.log(Math.expm1("s"));
It will print :
6.38905609893065
10.023176380641601
10.023176380641601
0
NaN
NaN
NaN
For null, it returns 0. For other values, it tries to convert to a number. If it converts, it calculates for that value, else returns NaN.