1. 基本概念
Math.expm1()方法返回e^x - 1,其中e^x是e的x次方。x是传递给Math.expm1()方法的参数;而e是自然常数,它的值约等于2.718281828459045。
调用Math.expm1()方法的语法形式如下所示:
Math.expm1(x);
既然Math.expm1()方法的参数x代表指数,那么它就应该是一个数字,即它属于Number类型。如果不是,那么它会先被自动转换为数字。
为了更好地记忆Math.expm1()方法的作用,我们将它的名称分为三部分,分别是:exp、m和1。首先exp是单词“exponent”的缩写,而“exponent”的含义就是“指数”,这暗示Math.expm1()首先要进行幂运算,其中底数为e而指数x就是该方法的参数。m是单词“minus”的首字母,表示减法;1就是数字1。
因此Math.expm1()方法的名字就说明了它的作用,那就是先进行幂运算再将该中间结果减去1;即Math.expm1(x)等于Math.exp(x) - 1。
2. 返回值规则
JavaScript的Number类型的一个特殊之处就在于它包含几个特殊数字,分别是:NaN、+0、-0、正无穷(+Infinity)和负无穷(-Infinity)。当Math.expm1()方法的参数x是这些特殊数字时,可能需要额外引起注意。概括起来,JavaScript按照如下这些规则来决定Math.expm1()方法的返回值。
1. 如果x是NaN,那么返回值是NaN;
2. 如果x是+0,那么返回值是+0;
3. 如果x是-0,那么返回值是-0;
4. 如果x是正无穷(+Infinity),那么返回值是正无穷;
5. 如果x是负无穷(-Infinity),那么返回值是-1;
6. 其余情况下,x是一普通数字,那么返回值就是e^x - 1。
结合Math.expm1()等于e^x - 1,可以很好地理解以上这些规则。如果你传递的x不是数字的话,那么这些规则中提到的x的值指的是x被转换为数字后的值。
3. 示例
总的来说,Math.expm1()方法很好理解;因此我们只举几个简单的例子就行了。以下示例代码的执行结果如图1所示。
图1 示例代码的执行结果
(完)
热门跟贴