《JavaScript高级程序设计》百度王牌下载链接:
https://pan.baidu.com/s/18rtBTMyDWLWrgr0bnCXTbg
提取码: 3ibu
1、慎用浮点数做判断
浮点数值的高精度是 17位小数,但在进行算术计算时其精确度远远不如整数。例如,0.1加 0.2 的结果不是 0.3,而是 0.30000000000000004。这个小小的舍入误差会导致无法测试特定的浮点数值。 例如:
if (a + b == 0.3){ // 不要做这样的测试!
alert("You got 0.3.");
}
2、NaN
NaN与任何值都不相等,包括 NaN 本身,例如,下面的代 码会返回 false:
alert(NaN == NaN); //false
因此只能用函数isNaN()来判断:
任何 不能被转换为数值的值都会导致这个函数返回 true。请看下面的例子:
alert(isNaN(NaN)); //true
alert(isNaN(10)); //false(10是一个数值)
alert(isNaN("10")); //false(可以被转换成数值 10)
alert(isNaN("blue")); //true(不能转换成数值)
alert(isNaN(true)); //false(可以被转换成数值 1)
3、区别Number()和parseInt()函数在转换数据时的不同点