1.5 ECMAScript 5
几乎所有的现代浏览器与其他相关环境都实现了ECMAScript的第3版,对此我们可以安心使用。第4版则直接被跳过了。而ECMAScript的第5版(以下简称为ES5)则到2009年12月才被正式采纳。
ES5中除了引入了一些新的对象与属性外,它还提供了“严格模式(strict mode)”。所谓严格模式其实就是在ES5发布之前,市面上各版互不兼容语言的子集。严格模式是可选的,也就是说,选择以严格模式执行的代码段(以函数为单位,或者整个程序)都必须要在其头部作如下声明:
"use strict";
这其实是一个JavaScript字符串。虽然我们并没有将其赋值给某个变量,执行后也不会有什么效果,但它符合JavaScript语法。因此不支持ES5严格模式的老式浏览器会直接忽略它,然后以普通的JavaScript对待其后的代码。也就是说,这种严格模式是向后兼容的,使用严格模式不会导致老式浏览器无法执行代码。
或许在将来的版本中,严格模式由可能会成为ES的默认模式,甚至是唯一模式。但现在它还只是一个可选项。
出于向后兼容的考虑,本书所有的示例都将遵守ES3规则,但同时本书中所有的代码也都能在ES5严格模式下正常执行,不会有任何警告。另外,本书中专门为ES5所写的部分会被清楚地标记出来。而关于ES5的新特性,我们在附录C,内建对象中会有详细收录。
时间: 2024-10-29 04:46:34