使用数学运算（数学对象）

JScript中内建了一个有用的可处理数字的对象。数学对象的方法允许你进行各种类型数学运算。数学对象的属性允许你使用特殊的数学常数，你不需要明确地建立一个新的数学对象来使用这个对象的方法和属性。

常用的数学方法

如果你因为某些需求要使用三角函数时数学对象可派上用场，下面所列是一些数学对象的方法：

> cos（）用于计算余弦

> sin（）用于计算正弦

> tan（）用于计算正切

> acos（）用于计算反余弦

> asin（）用于计算反正弦

> atan（）用于计算反正切

数学对象中也包括两个比较两个数的方法，min（）方法返回两个值中的较小值，而max（）返回两值中较大的值，下面的例子使用了这两个方法：

<%=Math.min(290909,899)%>

899

<%=Math.max(290909,899)%>

290909

最后，数学对象中还有下述一些附加方法：

> exp（）用于计算e的n次方

> log（）用于计算自然对数

> pow（）用于计算n次方

> sqrt（）用于计算平方根

数字的舍入

数学对象提供了四种方法，它们可粗略地归为“舍入”方法：abs()、round（）、floor（）和ceil（）。下面的例子显示了怎样使用这四种方法及它们的返回值：

<%=Math.abs(-22)%>

22

<%=Math.round(5.5)%>

6

<%=Math.floor(5.5)%>

5

<%=Math.ceil(5.5)%>

6

abs()方法返回传给它的数值的绝对值，round（）方法将一个数取整为与它最接近的整数，它采用四舍五入的方法取整。floor（）方法总是将小数部分直接舍去来取整，ceil（）总是将小数部分舍去然后将整数部分加1来取整。

产生随机数

数学对象中最有用的方法之一是random（）方法，使用它你可以产生随机数：

The random number is : <%=Math.random()%>

在此例中产生了一个0到1（包括1）之间的一个随机数，你不需要为random（）方法提供一个种子来产生新的随机数,与VBScript不同，random（）方法在网页每次被刷新时都会自动产生一个新的随机数（每当JScript被调入时，随机数产生器都会自动产生一个种子）。

有时，你需要产生一个0和某一个整数之间的随机数，要产生一个大于等于0但小于等于另一特定整数的随机数，你可以使用下面的脚本：

<%=Math.round(upperbound*Math.random())%>

用你想产生的随机数的上界来代替表达式upperbound，例如如果你想产生一个0到10之间的随机数，就用10代替表达式upperbound，象下面这样：

<%=Math.round(10*Math.random())%>

你可能还需要产生落在某一范围内的随机数，换句话说，你可能需要产生一个即有上界也有下界的随机数。要实现这一点，你可以使用下面的脚本。

<%=Math.round((upperbound-lowerbound)*Math.random()+lowerbound)%>

例如，下面的脚本产生75到100（包括100）之间的随机数。

<%=Math.round((100-75)*Math.random()+75)%>

数学常数

如果你需要在你网点里的某个脚本中使用π或欧拉常数（e）（这种情况是每个人都经常遇到的）。你很幸运，数学对象提供了大量的数学常数，这些常数都是数学对象的属性，下面是所有这些常数及它们的返回值：

The value of e is: <%=Math.E%>

The value of e is: 2.71828182845905

The natural logarithm of 2 is: <%=Math.LN2%>

The natural logarithm of 2 is: 0.693147180559945

The natural logarithm of 10 is: <%=Math.LN10%>

The natural logarithm of 10 is: 2.30258509299405

The base 2 logarithm of e is: <%=Math.LOG2E%>

The base 2 logarithm of e is: 1.44269504088896

The base 10 logarithm of e is: <%=Math.LOG10E%>

The base 10 logarithm of e is: 0.434294481903252

The value of pi is: <%=Math.PI%>

The value of pi is: 3.14159265358979

The square root of .5 is: <%=Math.SQRT1_2%>

The square root of .5 is: 0.707106781186548

The square root of 2 is: <%=Math.SQRT2%>

The square root of 2 is: 1.4142135623731