1.严格模式:ECMAScript5引入了严格模式的概念。在严格模式下,一些不确定的行为将得到处理,并对不安全的操作抛出错误。整体启用方法:在顶部添加 “use strict”;
2.变量:ECMAScript的变量是松散类型的,可以用来保存任何类型的数据。定义变量使用 var 操作符。var操作符定义的变量将成为定义该变量的作用域中的局部变量,如果在一个函数中使用var定义一个变量,那么这个变量在函数退出后就会被销毁。不过可以省略var来创建全局变量。(这样会使得全局变量很难维护,不推荐)
function test() {
message = "hello";//全局变量
}
3.数据类型: ECMAScript的6种数据类型:(简单)Undefined、Null、Boolean、Number、String和(复杂)Object。可以使用typeof操作符来检测数值类型。
- 在使用var声明变量未初始化时变量的值为undefined,如果定义的变量将来用于保存对象,最好将该变量初始化为null.
- 对于任何数据类型的值调用Boolean()函数总会返回一个Boolean值
- 永远不要测试某个特定的浮点数值。
- NaN表示一个本来要返回的数值的操作数未返回数值的情况(任何数除以0会返回NaN)。CMAScript定义了isNaN()函数,可以尝试将一个数转换为数值。除此之外,还有3个函数可以把非数值转换为数值:Number()、parseInt()、parseFloat(),其中Number()可以用于任何数据类型。
- ECMAScript中的字符串是不可变的。要改变某个变量保存的字符串,首先要销毁保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串该变量。
- toString() 方法可以将null和undefined以外的类型转换为字符串。如果不知道要转换的值的情况,可以使用String() 函数:值是null返回"null",undefined返回"undefined"。