NaN: 当无穷大除以无穷大、负数开方、算数运算符与不是数字或无法转成数字的操作数一起使用。
Infiniti: 无穷大,可以为-Infiniti负无穷大
1.x=!x
这个判断当且仅当x=NaN的时候成立。
2.isNaN()
如果参数是NaN或者是非数字的时候返回true。
3.isFinite()
在参数不是NaN,Infiniti,-Infiniti是返回true。
4.浮点数操作
浮点数操作时,看似相等的操作结果值并不是相等的,如:(0.2-0.1) != (0.3-0.2) .....所以有时候很多操作都是先化成整数。
5.字符串(数字,布尔值)的.操作(只读)
若声明一个字符串s,然后s.charAt(0),这里是调用了字符串的方法js会先自动执行new String(s)方法将s转换为对象然后调用方法。但若是添加属性或方法则会被添加到临时对象中而不被保存。
6.引用类型的等式
两个单独的对象与两个单独的数组,即便值都是一样的也不是相等的。当且仅当它们引用一个基对象时才相等。
7.parseInt()与Number()
这两个都能将字符串(类数字)转换成数字,不同的在于Nusmber只要字符串中含有不是数字的内容就转换失败返回NaN,parseInt可以将开头是数字(自动去前面空格)的字符串成功转换。parseInt()可接收第二个参数parseInt(123,8) ,原理是1*8+2*8+3*8。
8.用var声明的变量是不可删除的。