JavaScript提供了丰富的数学处理工具,这比多数没有计算机和数学背景知识的脚本开发人员在日常生活中使用的要多得多。但是每个真正的程序设计语言都需要这些功能,编程人员将会利用这些功能使窗口在屏幕上更加生动。
Math对象包含了所有这些能力,这个对象与JavaScript其他对象不同,因为用户不能生成所使用对象的副本,相反脚本汇集了简单Math对象的属性和方法。Math对象实际上存在于每个窗口和框架中,但是对脚本没有影响,程序员把这种固定对象叫做静态对象。Math对象(开头是一个大写M)是这些属性和方法引用的一部分,Math对象的属性通常是常数,比如π和2的平方根:
var piValue=Math.PI
var rootOfTwo=Math.SQRT2
Math对象方法包括广泛的三角函数,还有其他一些已经在脚本中定义过的处理数值的数学函数。比如,用户可以找出两个数值中的较大者:
var larger=Math.max(value1,value2)
或可以得到一个数的10次方:
var result=Math.pow(value1,10)
或许更常用的是把一个值四舍五入为最相近的整数值:
var result=Math.round(value1)
Math对象的另一个常用需求是随机数,虽然这个特性被Navigator 2的Windows和Macintosh版本所抛弃,但在那以后的所有版本都包含这个特性。Math.random()方法返回0和1之间的浮点数。假如设计一个卡片游戏的脚本,就需要1~52之间的随机数;又或者是骰子游戏,每个骰子的范围是1~6。为了生成0和任意上限数之间的随机整数,使用下列格式:
Math.floor(Math.random()*(n+1))
这里n是上限数,Math.floor返回任意浮点数的整数部分。为了生成一个和任意数之间的随机数,使用下列格式:
Math.floor(Math.random()*n)+1
这里n等于范围的上限数。对骰子游戏,每个骰子的规则是:
newDieValue=Math.floor(Math.random()*6)+1
除了IE5.5和NN6,JavaScript没有提供一处指定数字格式的方法,浮点可在小数点后显示十几个数。更进一步讲,运算的结果受到每个操作系统平台特定的浮点数的影响,特别是在脚本浏览器的早期版本中。对IE5.5和NN6之前的版本,用户必须根据自己的脚本编程来格式化每个数,比如美元和美分
来源:https://www.cnblogs.com/winner/archive/2008/11/30/1344348.html