标签:
1. JS中的一切(变量、函数名、操作符等)都区分大小写。--true是boolean值,而True只是标识符。
2. JS语句以分号结尾,但不是必需的,原因:
a. 结尾没有分号有时会导致压缩错误。
b. 加上分号在某些情况下会为解析器提供方便,增进代码的性能。
3. 不同的ECMAScript版本对关键字和保留字的定义不同,但最好在JS代码中永远都不用任何关键字和保留字,以便与将来的ECMAScript版本兼容。
4. ECMAScript的变量是松散类型的,就是一个变量没有特定的类型限制,可以保存任何类型的数据。未经过初始化的变量,会保存一个特殊的值--undefined。
5. var 操作符定义的变量将成为定义该变量的作用域中的局部变量。如果var定义的变量不在任何语句块内,则为全局变量。在语句块中也可以通过省略var直接定义全局变量,但这种做法并不推荐,比较容易引起混乱,不利于维护。
6. ECMAScript中有5种简单数据类型(基本类型):Undefined、Null、Boolean、Number、String。另外还有一种复杂数据类型:Object。
7. typeof用来检测给定变量的数据类型。
8. 对未初始化或未声明的变量执行typeof,都会返回undefined. 实际上undefined值是派生自null值的。因此null == undefined。
9. Boolean值true不一定等于1,而false也不一定等于0。与false等价的值有:false、""、0、NaN、null、undefined,其余的值都与true等价。
10. 浮点数值的最高精度是17位小数,但在进行算术计算时其精确度远远不如整数,因此,永远不要测试某个特定的浮点数值。例如a=0.1,b=0.2,但a+b != 0.3。
11. NaN与任何值都不相等,包括NaN本身。
标签:
原文地址:http://www.cnblogs.com/rocklee2016/p/5452976.html