CoffeeScript - 数学



JavaScript 的Math对象提供用于数学常量和函数的属性和方法。与其他全局对象不同,Math不是构造函数。Math的所有属性和方法都是静态的,可以使用Math作为对象来调用,无需创建它。

因此,您可以将常量pi引用为Math.PI,并将正弦函数调用为Math.sin(x),其中x是方法的参数。我们可以在CoffeeScript代码中使用JavaScript的Math对象执行数学运算。

数学常量

如果我们想使用任何常见的数学常量,例如pi或e,我们可以使用JavaScript的Math对象。

以下是JavaScript的Math对象提供的Math常量列表:

序号 属性和描述
1

E

欧拉常数和自然对数的底数,约为2.718。

2

LN2

2的自然对数,约为0.693。

3

LN10

10的自然对数,约为2.302。

4

LOG2E

E的以2为底的对数,约为1.442。

5

LOG10E

E的以10为底的对数,约为0.434。

6

PI

圆周长与其直径的比率,约为3.14159。

7

SQRT1_2

1/2的平方根;等效于2的平方根的倒数,约为0.707。

8 SQRT2

2的平方根,约为1.414。

示例

以下示例演示了在CoffeeScript中使用JavaScript提供的数学常量。将此代码保存在名为math_example.coffee的文件中。

e_value = Math.E
console.log "The value of the constant E is: " + e_value

LN2_value = Math.LN2
console.log "The value of the constant LN2 is: " + LN2_value

LN10_value = Math.LN10
console.log "The value of the constant LN10 is: " + LN10_value

LOG2E_value = Math.LOG2E
console.log "The value of the constant LOG2E is: " + LOG2E_value

LOG10E_value = Math.LOG10E
console.log "The value of the constant LOG10E is: " + LOG10E_value

PI_value = Math.PI
console.log "The value of the constant PI is: " + PI_value

SQRT1_2_value = Math.SQRT1_2
console.log "The value of the constant SQRT1_2 is: " + SQRT1_2_value

SQRT2_value = Math.SQRT2
console.log "The value of the constant SQRT2 is: " + SQRT2_value

打开命令提示符并编译.coffee文件,如下所示。

c:\> coffee -c math_example.coffee

编译后,它会提供以下JavaScript代码。

// Generated by CoffeeScript 1.10.0
(function() {
  var LN10_value, LN2_value, LOG10E_value, LOG2E_value, PI_value, SQRT1_2_value, SQRT2_value, e_value;

  e_value = Math.E;

  console.log("The value of the constant E is: " + e_value);

  LN2_value = Math.LN2;

  console.log("The value of the constant LN2 is: " + LN2_value);

  LN10_value = Math.LN10;

  console.log("The value of the constant LN10 is: " + LN10_value);

  LOG2E_value = Math.LOG2E;

  console.log("The value of the constant LOG2E is: " + LOG2E_value);

  LOG10E_value = Math.LOG10E;

  console.log("The value of the constant LOG10E is: " + LOG10E_value);

  PI_value = Math.PI;

  console.log("The value of the constant PI is: " + PI_value);

  SQRT1_2_value = Math.SQRT1_2;

  console.log("The value of the constant SQRT1_2 is: " + SQRT1_2_value);

  SQRT2_value = Math.SQRT2;

  console.log("The value of the constant SQRT2 is: " + SQRT2_value);

}).call(this);

现在,再次打开命令提示符并运行CoffeeScript文件,如下所示。

c:\> coffee math_example.coffee

执行后,CoffeeScript文件会产生以下输出。

The value of the constant E is: 2.718281828459045
The value of the constant LN2 is: 0.6931471805599453
The value of the constant LN10 is: 2.302585092994046
The value of the constant LOG2E is: 1.4426950408889634
The value of the constant LOG10E is: 0.4342944819032518
The value of the constant PI is: 3.141592653589793
The value of the constant SQRT1_2 is: 0.7071067811865476
The value of the constant SQRT2 is: 1.4142135623730951

数学方法

除了属性外,Math对象还提供方法。以下是JavaScript的Math对象的方法列表。点击这些方法的名称,可以获得一个演示它们在CoffeeScript中用法的示例。

序号 方法和描述
1 abs()

返回数字的绝对值。

2 acos()

返回数字的反余弦值(以弧度表示)。

3 asin()

返回数字的反正弦值(以弧度表示)。

4 atan()

返回数字的反正切值(以弧度表示)。

5 atan2()

返回其参数商的反正切值。

6 ceil()

返回大于或等于数字的最小整数。

7 cos()

返回数字的余弦值。

8 exp()

返回EN,其中N是参数,E是欧拉常数,即自然对数的底数。

9 floor()

返回小于或等于数字的最大整数。

10 log()

返回数字的自然对数(以E为底)。

11 max()

返回零个或多个数字中最大的数字。

12 min()

返回零个或多个数字中最小的数字。

13 pow()

返回底数的指数次幂,即底数指数

14 random()

返回0到1之间的伪随机数。

15 round()

返回四舍五入到最接近整数的数字的值。

16 sin()

返回数字的正弦值。

17 sqrt()

返回数字的平方根。

18 tan()

返回数字的正切值。

广告