当前页面: 开发资料首页 → Javascript 专题 → Javascript实例教程(17) 使用Javascript的数学函数
摘要: Javascript实例教程(17) 使用Javascript的数学函数
Math.E </td> <td width="33%" valign="TOP">
自然对数的底(为常数) </td> <td width="33%" valign="TOP">
2.718 </td> </tr> <td width="33%" valign="TOP">
Math.LN10 </td> <td width="33%" valign="TOP">
10的自然对数 </td> <td width="33%" valign="TOP">
2.302 </td> </tr> <td width="33%" valign="TOP">
Math.LN2 </td> <td width="33%" valign="TOP">
2的自然对数 </td> <td width="33%" valign="TOP">
0.693 </td> </tr> <td width="33%" valign="TOP">
Math.PI </td> <td width="33%" valign="TOP">
圆周率 </td> <td width="33%" valign="TOP">
3.1415 </td> </tr> <td width="33%" valign="TOP">
Math.SQRT1_2 </td> <td width="33%" valign="TOP">
1/2的平方根 </td> <td width="33%" valign="TOP">
0.707 </td> </tr> <td width="33%" valign="TOP">
Math.SQRT2 </td> <td width="33%" valign="TOP">
2的平方根 </td> <td width="33%" valign="TOP">
1.414 </td> </tr> <td width="33%" valign="TOP">
Math.sqrt(x) </td> <td width="33%" valign="TOP">
X的平方根 </td> <td width="33%" valign="TOP">
更X的值有关 </td> </tr> <td width="33%" valign="TOP">
Math.pow(x, n) </td> <td width="33%" valign="TOP">
返回x的n次方的数值 </td> <td width="33%" valign="TOP">
参数为x和n </td> </tr> <td width="33%" valign="TOP">
Math.log(n) </td> <td width="33%" valign="TOP">
返回n的自然对数 </td> <td width="33%" valign="TOP">
参数为n </td> </tr> <td width="33%" valign="TOP">
Math.exp(n) </td> <td width="33%" valign="TOP">
返回e的n次方的数值 </td> <td width="33%" valign="TOP">
参数为n </td> </tr> </table>
三角函数
<table BORDER cellspacing=1 cellpadding=7 width=500> <td width="50%" valign="TOP">
Math.cos(x) </td> <td width="50%" valign="TOP">
X的余弦函数 </td> </tr> <td width="50%" valign="TOP">
Math.sin(x) </td> <td width="50%" valign="TOP">
X的正弦函数 </td> </tr> <td width="50%" valign="TOP">
Math.tan(x) </td> <td width="50%" valign="TOP">
X的正切函数 </td> </tr> <td width="50%" valign="TOP">
Math.acos(y) </td> <td width="50%" valign="TOP">
X的反余弦函数 </td> </tr> <td width="50%" valign="TOP">
Math.asin(y) </td> <td width="50%" valign="TOP">
X的反正弦函数 </td> </tr> <td width="50%" valign="TOP">
Math.atan(y) </td> <td width="50%" valign="TOP">
X的反正切函数 </td> </tr> </table>
这里注意:参数x和以及反函数的返回数值的单位都为弧度(比如 PI弧度=180度)
舍入函数和随机数字
<table BORDER cellspacing=1 cellpadding=7 width=500> <td width="50%" valign="TOP">
Math.random() </td> <td width="50%" valign="TOP">
产生从0到1的随机数 </td> </tr> <td width="50%" valign="TOP">
Math.round(x) </td> <td width="50%" valign="TOP">
取最接近整数x的数值 </td> </tr> <td width="50%" valign="TOP">
Math.floor(x) </td> <td width="50%" valign="TOP">
取最接近整数x并且比x小的数值 </td> </tr> <td width="50%" valign="TOP">
Math.ceil(x) </td> <td width="50%" valign="TOP">
取最接近整数x并且比x大的数值 </td> </tr> <td width="50%" valign="TOP">
Math.min(a, b, c) </td> <td width="50%" valign="TOP">
返回参数列表中最小的数值 </td> </tr> <td width="50%" valign="TOP">
Math.max(a, b, c) </td> <td width="50%" valign="TOP">
返回参数列表中最大的数值 </td> </tr> </table>
这里注意:函数Math.random()只能在Unix版本的Navigator 2.0执行。
这些函数中最常用的就是产生在给定两个数值之间的随机数。以下的函数就是一个很好的例子:
function randomvalue(low, high) {
alert(Math.floor(Math.random() * (1 + high - low) + low));
}
另外,你可以在复杂的代码中使用with语句来避免Math标识符的重复使用,例如以下代码:
function randomvalue(low, high) {
with (Math) {
alert(floor(random() * (1 + high - low) + low));
}
}
这里要记住,Math.random()函数只能在Unix版本的Navigator 2.0执行,而不能在windows版本的浏览器中执行,所以这个函数我们一般不使用。
以下给出的是一个更复杂的函数。这个函数返回三角形第三边的长度,给出的条件是三角形的两边及两边的夹角。具体代码如下:
function findside(sidea, sideb, angle) {
with (Math) {
var tmp = pow(sidea, 2) + pow(sideb, 2) - 2 * sidea * sideb * cos(angle);
alert("side length is " + sqrt(tmp));
}
}</td>
</tr>
</table></td>
</tr>