实型(浮点型)是由整数部分加小数部分表示,如12.32、193.98 。可以用科学或标准方法表示:5E7、4e5等。
范围:IEEE754-1985
[color=darkred] 注意:给数字变量赋值时,不要以0开头,因为javaScript不仅支持十进制,还支持十六进制、八进制
[list]
[*]十六进制:以0X或0x开始;
[*]八进制:以0开始;
[/list][/color]
[color=darkred] 注意:不是所有的浏览器都支持八进制[/color]
无穷大:Infinity
无穷小-Infinity
Infinity,-Infinity与其他数字进行运算时,结果:NaN。
Infinity,-Infinity都可以进行比较运算,Infinity等于Infinity,-Infinity等于-Infinity。
[color=darkred]注意javaScript中的算术运算允许除数为0(除数和被除数不能同时为0,否则结果:NaN),结果:Infinity。
注意NaN不会与任何数字变量相等。[/color]
Number的常量与特殊值的对应关系
[list=1]
[*]Number.MAX_VALIE --- 数字型变量允许的最大值
[*]Number.MIN_VALUE --- 数字型变量允许的最小值
[*]Number.POSITIVE_INFINITY --- 无穷大
[*]Number.NEGATIVE_INFINITY --- 无穷小
[*]Number.NaN --- 非数
[/list]
对于浮点数,尽量不要直接比较,推荐差值比较法。
范围:IEEE754-1985
<script>
var a ;
a = 5E2;
alert(a);
b = 3.12e1
c = 45.0;
d = .34e4;//只有小数部分可以省略0,但小数点不可以省略。
e = 24e-2;
alert(b + '---' + c + '---' + d + '---' + e);
</script>
[color=darkred] 注意:给数字变量赋值时,不要以0开头,因为javaScript不仅支持十进制,还支持十六进制、八进制
[list]
[*]十六进制:以0X或0x开始;
[*]八进制:以0开始;
[/list][/color]
[color=darkred] 注意:不是所有的浏览器都支持八进制[/color]
<script>
var a;
a = 0x13;
var b;
b = 014;
alert(a + "---" + b);
</script>
无穷大:Infinity
无穷小-Infinity
Infinity,-Infinity与其他数字进行运算时,结果:NaN。
Infinity,-Infinity都可以进行比较运算,Infinity等于Infinity,-Infinity等于-Infinity。
<script>
//定义x为最大的数字
var x = 1.7976931348623157e308;
//再次增加x的值
x = x + 1e292;
//使用警告对话框输出x的值
alert(x);
//定义y为最小的数字
var y = -1.7976931348623157e308;
//再次减少y的值
y = y - 1e292;
//使用警告对话框输出y的值
alert(y);
alert(y + 3E3000);
a = Number.POSITIVE_INFINITY;
b = Number.NEGATIVE_INFINITY;
alert(a + b);
</script>
[color=darkred]注意javaScript中的算术运算允许除数为0(除数和被除数不能同时为0,否则结果:NaN),结果:Infinity。
注意NaN不会与任何数字变量相等。[/color]
<script>
//定义x的值为NaN
var x = 0 / 0;
//判断两个NaN是否相等
if (x != x)
{
alert("xxxxxxxxxxx");
}
//调用isNaN判断变量
if (isNaN(x))
{
alert("=-=======");
}
</script>
Number的常量与特殊值的对应关系
[list=1]
[*]Number.MAX_VALIE --- 数字型变量允许的最大值
[*]Number.MIN_VALUE --- 数字型变量允许的最小值
[*]Number.POSITIVE_INFINITY --- 无穷大
[*]Number.NEGATIVE_INFINITY --- 无穷小
[*]Number.NaN --- 非数
[/list]
对于浮点数,尽量不要直接比较,推荐差值比较法。
<script>
var a = .3333;
var b = a * 5;
alert(b);
alert(b==1.6665);
alert((1.6665-b)<0.1E10);
</script>