标识符
标识符(Identifier)就是名称的专业术语。JavaScript的标识符包括变量名、函数名、参数名和属性名等,也包括某些循环语句中跳转位置的标记。合法的标识符应该满足以下规则:
表示符可以是一个或多个字符。
第一个字符必须是字母、下划线(_)或美元符号($)。
除了第一个字符外,其他位置可以使用 Unicode 字符。一般建议仅使用 ASCII 编码的字母,不建议使用双字节的字符。
用户自定义的标识符不能与 JavaScript 关键字、保留字重名。
可以使用 Unicode 转义序列。例如,字符 a 可以使用“\u0049”表示。
例如,下列标识符都是合法的:
关键字
关键字就是 ECMA-262 规定的 JavaScript 语言内部使用的一组标识符,也称为命令。关键字具有特定的用途,用户不能自定义同名的标识符。例如,var为声明的含义,所以我们不能把var作为变量名使用。如表1-1所示,列出了JavaScript(ECMAScript)中的所有关键字。
特别注意:
关键字会随着 ECMAScript 迭代更新进行不断的新增,随时会发生变化,不过已有关键字不会被剔除掉。
保留字
保留字也是 ECMA-262 规定的 JavaScript 语言内部预备使用的一组标识符,它目前还没有具体的用途,是为 JavaScript 升级版本预留备用的,建议用户不要使用。如表1-2所示,列出了JavaScript(ECMAScript)中的所有保留字。
特别注意:
ECMAScript 3 将 Java 所有关键字都列为保留字,而 ECMAScript 5 规定较为灵活。 例如,在非严格模式下,仅规定 class、const、enums、export、extends、import、super 为保留字,其他 ECMAScript 3 保留字可以自由使用;在严格模式下,ECMAScript 5 变得更加谨慎,严格限制 implements、interface、let、package、private、protected、public、static、yield、eval(非保留字)、arguments(非保留字)的使用。
另外,JavaScript预定义了很多全局变量和函数,用户也应该避免使用它们的名称作为自定义标识符。如表1-3所示,列出了JavaScript中预定义的全局变量和函数。
特别注意:
不同的 JavaScript 运行环境,预定义的全局变量和函数有所,表1-3列出的预定义全局变量和函数仅针对 Web 浏览器运行环境。
无论是在严格模式下,还是在非严格模式下,都尽量不要在定义变量名、函数名或者属性名时使用上面列举出的保留字,以免同学们入坑。
特别注意:
本小节多处提到严格模式,它是ECMAScript5引入的新概念,我们将在未来章节简要介绍。
本文原创,未经作者允许不可转载!
更多内容,欢迎关注作者微信公众号:李游Leo老师前端讲堂!
暂无评论
违反法律法规
侵犯个人权益
有害网站环境