转载:http://www.itxueyuan.org/view/6627.html

ECMA-262 描述了一组具有特定用途的关键字。这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符。以下就是ECMAScript的全部关键字(带*号上标的是第5 版新增的关键字):

break do instanceof typeof
case else new var
catch finally return void
continue for switch while
debugger* function this with
default if throw delete
in try    

ECMA-262 还描述了另外一组不能用作标识符的保留字。尽管保留字在这门语言中还没有任何特定的用途。但它们有可能在将来被用作关键字。以下是ECMA-262 第3 版定义的全部保留字:

abstract enum int short
boolean export interface static
byte extends long super
char final native synchronized
class float package throws
const goto private transient
debugger implements protected volatile
double import public  

第5 版把在非严格模式下运行时的保留字缩减为下列这些:

class enum extends super
const export import  

在严格模式下,第5 版还对以下保留字施加了限制:

implements package public interface
private static let protected
yield      

注意, let 和yield 是第5 版新增的保留字;其他保留字都是第3 版定义的。为了最大程度地保证兼容性,建议大家将第3 版定义的保留字外加let 和yield 作为编程时的参考。

在实现ECMAScript 3 的JavaScript 引擎中使用关键字作标识符,会导致"Identifier Expected" 错误。而使用保留字作标识符可能会也可能不会导致相同的错误,具体取决于特定的引擎。

第5 版对使用关键字和保留字的规则进行了少许修改。关键字和保留字虽然仍然不能作为标识符使用,但现在可以用作对象的属性名。一般来说,最好都不要使用关键字和保留字作为标识符和属性名,以便与将来的ECMAScript 版本兼容。

除了上面列出的保留字和关键字,ECMA-262 第5 版对eval 和arguments 还施加了限制。在严格模式下,这两个名字也不能作为标识符或属性名,否则会抛出错误。

ECMA-262 描述了一组具有特定用途的关键字。这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符。以下就是ECMAScript的全部关键字(带*号上标的是第5 版新增的关键字):

break do instanceof typeof
case else new var
catch finally return void
continue for switch while
debugger* function this with
default if throw delete
in try    

ECMA-262 还描述了另外一组不能用作标识符的保留字。尽管保留字在这门语言中还没有任何特定的用途。但它们有可能在将来被用作关键字。以下是ECMA-262 第3 版定义的全部保留字:

abstract enum int short
boolean export interface static
byte extends long super
char final native synchronized
class float package throws
const goto private transient
debugger implements protected volatile
double import public  

第5 版把在非严格模式下运行时的保留字缩减为下列这些:

class enum extends super
const export import  

在严格模式下,第5 版还对以下保留字施加了限制:

implements package public interface
private static let protected
yield      

注意, let 和yield 是第5 版新增的保留字;其他保留字都是第3 版定义的。为了最大程度地保证兼容性,建议大家将第3 版定义的保留字外加let 和yield 作为编程时的参考。

在实现ECMAScript 3 的JavaScript 引擎中使用关键字作标识符,会导致"Identifier Expected" 错误。而使用保留字作标识符可能会也可能不会导致相同的错误,具体取决于特定的引擎。

第5 版对使用关键字和保留字的规则进行了少许修改。关键字和保留字虽然仍然不能作为标识符使用,但现在可以用作对象的属性名。一般来说,最好都不要使用关键字和保留字作为标识符和属性名,以便与将来的ECMAScript 版本兼容。

除了上面列出的保留字和关键字,ECMA-262 第5 版对eval 和arguments 还施加了限制。在严格模式下,这两个名字也不能作为标识符或属性名,否则会抛出错误。

JS关键字和保留字汇总相关推荐

  1. JS关键字和保留字汇总(小记)

    ECMA-262 描述了一组具有特定用途的关键字.这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等.按照规则,关键字也是语言保留的,不能用作标识符.以下就是ECMAScript的全部关 ...

  2. MySQL 关键字和保留字汇总(MySQL 8.0)

    MySQL 关键字和保留字汇总(MySQL 8.0) MySQL 关键字和保留字汇总(MySQL 8.0) MySQL 关键字和保留字汇总(MySQL 8.0) 关键字是在SQL中具有重要意义的单词, ...

  3. js中的关键字和保留字

    前两天面试官问了我一道题:你知道js有哪些保留字吗? 当时自己就说了abstract,try,catch,this,其中最重要的就是this这个关键字了. 然后面试官问,你说的this是关键字,我问的 ...

  4. JS标识符、关键字、保留字

    1.标识符 标识符:是指开发人员为变量.属性.函数.参数取的名字. 标识符不能是关键字和保留字 2.关键字 是指JS本身已经使用了的字 , 不能在用他们充当变量名.方法名 包括:break . cas ...

  5. java js关键字_JavaScript关键字和保留字

    原标题:JavaScript关键字和保留字 Java关键字 ECMA-262描述了一组具有特定用途的关键字,这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等.按照规则,关键字也是语言保 ...

  6. JS标识符、关键字和保留字

    本章我们讲解一下 JavaScript 中的几个简单的概念,包括标识符.关键字和保留字.这些基本概念虽然不能直接提升我们的编程能力,但它们是 JavaScript 的基本组成元素. 标识符 标识符(I ...

  7. Web前端学习笔记11:JavaScript_注释_输入输出_变量_数据类型_关键字_保留字_运算符_流程控制

    文章目录 JavaScript基础第01天 1 - 编程语言 1.1 编程 1.2 计算机语言 1.3 编程语言 1.4 翻译器 1.5 编程语言和标记语言区别 总结 2 - 计算机基础 2.1 计算 ...

  8. JavaScript基础第01天笔记——编程语言、计算机基础、JavaScript注释、JavaScript输入输出语句、变量的概念、变量的使用、数据类型、解释型语言和编译型语言、关键字和保留字

    1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的指令集合,而程序全部都是用我们所掌 ...

  9. JavaScript高级程序设计笔记01 | 第一章到第四章 | 关键字与保留字 | 数据类型 | 操作符 | 作用域

    观前提示:大部分都是书上的内容,个人理解的部分的较少,看我的笔记还不如去看书 第二章 async:可选.表示应该立即下载脚本,但不应妨碍页面中的其他操作,比如下载其他资源或 等待加载其他脚本.只对外部 ...

最新文章

  1. Python for循环本质
  2. python3 安装pyinstaller_python3.7 打包(.exe)神器——pyinstaller 安装及用法
  3. html页面设置不可点击事件,css怎么设置div不可点击?
  4. ASP.NET MVC学习之控制器篇
  5. MATLAB中的微积分运算(数值符号)
  6. 虚拟机的安装中遇到的问题(WIN10主机)
  7. Nginx 设置文件缓存时间
  8. oracle 11g 01017,oracle 11G OEM 出现问题 ORA-01017: inv
  9. 无法打开键,请验证您对该键拥有足够的访问权限
  10. 第六章Python数据可视化
  11. linux系统外接硬盘_linux系统外接存储管理命令
  12. 蓝桥杯训练 日期计算
  13. 读《深入浅出MySQL数据库开发、优化与管理维护(第2版)》笔记1
  14. Hexagon GDB Debugger介绍(53)
  15. ACL技术,NAT技术,园区网组网
  16. 斐讯k2php环境,斐讯K2T SDK编译环境
  17. 解决dubbo问题:forbid consumer
  18. @Resource()注解报红
  19. 请教 ANDROID 通信信号、网络信号图标的颜色问题
  20. AcWing-C/C++语法基础【合集1】

热门文章

  1. Docker使用-构建MySQL
  2. data.frame类型数据如何将第一列值替换为行号
  3. 如何部署 Hyperic ,使得从内网监测外网服务器
  4. 解决outlook2013设置错误无法启动
  5. cocos2dx3.2文件结构和代码结构
  6. HashMap get不出对象时出错 解决
  7. 检测Java对象所占内存大小 (转载)
  8. 实现三元组表示的两个稀疏矩阵的加法_K-BERT | 基于知识图谱的语言表示模型
  9. 加密机工作原理_端子机压力检测装置工作原理
  10. r 函数返回多个值_第四讲 R描述性统计分析