在 JavaScript 中,关键字和保留字是具有特殊含义的单词,关键字是语言当前正在使用的“工具”,而保留字是为未来预留的“工具”,它们都不能被用作变量名、函数名或其他标识符名称。
关键字
按照规定,保留的关键字不能用作标识符或属性名。
break, case, catch, class, const, continue, debugger, default, delete, do, else, export, extends, false, finally, for, function, if, import, in, instanceof, new, null, return, super, switch, this, throw, true, try, typeof, var, void, while, with, yield
保留字
未来可能被用作关键字,应该避免使用。
abstract, boolean, byte, char, double, enum, final, float, goto, int, long, native, short, synchronized, throws, transient, volatile
严格模式下的保留字
在严格模式下不能用作标识符。
await, implements, interface, let, package, private, protected, public, static
规则
- 无论是关键字还是保留字,都不能用作变量名、函数名或标签名。
- 严格模式:启用了严格模式(
'use strict';)时,限制会更加严格。 - 在对象的属性名中可以使用关键字。例如:
{ import: "some value" }是合法的。