首页 理论教育零基础JavaScript:最大/最小值示范

零基础JavaScript:最大/最小值示范

【摘要】:JavaScript采用64位浮点格式表示数字,最小值支持“5e-324”,最大值支持“1.7976931 348623157e+308”。和大多数语言一样,JavaScript的整数有最大值限制,若需要进行超过该值的数值运算,则需要进行特殊处理。JavaScript的最大安全整数是9007199254740991,也就是253-1,默认情况下超过该值的计算都是不可靠的。图5.1.1Number相关常量Number对象定义了数值基础数据,并提供了数字转换函数。图5.1.2Number成员函数运行结果显示:◇ 解析函数Number.parseInt与parseInt完全相等,Number.parseFloat与parseFloat完全相等。

JavaScript采用64位浮点格式表示数字,最小值支持“5e-324”,最大值支持“1.7976931 348623157e+308”。和大多数语言一样,JavaScript的整数有最大值限制,若需要进行超过该值的数值运算,则需要进行特殊处理。JavaScript的最大安全整数是9007199254740991,也就是253-1,默认情况下超过该值的计算都是不可靠的。

5.1.1.html查看数值相关常量,如下所示。

动手写5.1.1

执行5.1.1.html,输出结果到网页,如下图所示。

图5.1.1 Number相关常量

Number对象定义了数值基础数据,并提供了数字转换函数。与数学计算相关的函数由Math对象提供。

JavaScript支持的浮点数最小精度接近2.2204460492503130808472633361816E-16,或者 2-52,由此可知JavaScript浮点数运算可能会出现误差,这一点与JavaScript采用的数字表示方式IEEE 754标准有关。

Number提供的函数与全局函数实现同样的功能。下表中的全局判断函数(isFinite、isNaN)接收的参数a如果不是数字,就将其转换为数字之后再进行判断,而Number提供的函数则要求参数a必须是数字,若不是数字则返回false。全局解析函数(parseFloat、parseInt)与Number提供的函数完全一致,如下表所示。

表5.1.1 Number成员函数

(续上表)

(www.chuimin.cn)

提示

JavaScript在安全整数范围内进行运算能够获得正确结果,一旦超过安全整数,计算结果会不准确,比如“9007199254740991+1”“9007199254740991+2”这两个表达式的结果都是9007199254740992。

5.1.2.html使用Number提供的函数和全局函数判断参数是否为指定类型,并将字符串解析为对应的数字,如下所示。

动手写5.1.2

执行5.1.2.html,输出判断结果和解析结果到网页,如下图所示。

图5.1.2 Number成员函数

运行结果显示:

◇ 解析函数Number.parseInt与parseInt完全相等,Number.parseFloat与parseFloat完全相等。

◇ 判断函数Number.isFinite仅支持以数字为参数,isFinite支持以数字和字符串为参数。

◇ 判断函数Number.isNaN与isNaN,不一致而且差异较大。

◇ parseInt和parseFloat尽可能解析字符串,一元运算符加号(+)转换操作数为数字时,一旦操作数不是合法的数字或字符串形式的数字,直接返回NaN。