偏见又来了,以下文字请注意阅读姿势:
我觉得JS的知识点,在学习的时候要有侧重。有些是面向工作的,有些是面向面试的,例如接下来的数值范围这个知识点。
数字是无限的,即使有一张无限大的纸,你也不可能写完所有的数字。所以在内存中,ECMAScript也存不了所有的数值。
那这就有一个范围的问题,即ECMAScript所能够表示的最大和最小值。
最小值,5e-324。昨天学过e表示法,就是0.000(324个0)0005,那么小。
最大值,1.799....257e+308,那么大的数。
(第29页有)
最小值是保存在 Number.MIN-VALUE;
最大值是保存在 Number.MAX-VALUE;
如果某次计算的值,超了,这个值就自动转换成Infinity(正无穷)值。如果是负的,就是-Infinity(负无穷)。
这个值无法参与计算。
怎么判断这个值是不是Infinity呢?
用isFinite()判断,这个函数在参数的值是最小和最大之间的时候,会返回true,就像这样:
var xx = 123;
console.log( xx ); //true
这个函数,我从来就没有用过,但它就是有可能会出现在面试中。而且这类不常用的方法,也有可能会出现在什么库啊,框架之中,我不知道啊,所以框架就看不懂了。