保留關鍵字
JavaScript 具有預定義的預留關鍵字集合,你不能將其用作變數,標籤或函式名稱
ECMAScript 1
Version = 1
A - E. | E - R. | S - Z. |
---|---|---|
break |
export |
super |
case |
extends |
switch |
catch |
false |
this |
class |
finally |
throw |
const |
for |
true |
continue |
function |
try |
debugger |
if |
typeof |
default |
import |
var |
delete |
in |
void |
do |
new |
while |
else |
null |
with |
enum |
return |
ECMAScript 2
新增了 24 個其他保留關鍵字 (新增加粗體)。
Version = E4X
A - F. | F - P. | P - Z. |
---|---|---|
abstract |
final |
public |
boolean |
finally |
return |
break |
float |
short |
byte |
for |
static |
case |
function |
super |
catch |
goto |
switch |
char |
if |
synchronized |
class |
implements |
this |
const |
import |
throw |
continue |
in |
throws |
debugger |
instanceof |
transient |
default |
int |
true |
delete |
interface |
try |
do |
long |
typeof |
double |
native |
var |
else |
new |
void |
enum |
null |
volatile |
export |
package |
while |
extends |
private |
with |
false |
protected |
ECMAScript 5 / 5.1
自 ECMAScript 3 以來沒有任何變化。
ECMAScript 5 刪除了 int
,byte
,char
,goto
,long
,final
,float
,short
,double
,native
,throws
,boolean
,abstract
,volatile
,transient
和 synchronized
; 它新增了 let
和 yield
。
A - F. | F - P. | P - Z. |
---|---|---|
break |
finally |
public |
case |
for |
return |
catch |
function |
static |
class |
if |
super |
const |
implements |
switch |
continue |
import |
this |
debugger |
in |
throw |
default |
instanceof |
true |
delete |
interface |
try |
do |
let |
typeof |
else |
new |
var |
enum |
null |
void |
export |
package |
while |
extends |
private |
with |
false |
protected |
yield |
implements
,let
,private
,public
,interface
,package
,protected
,static
和yield
僅在嚴格模式下不允許。
eval
和arguments
不是保留字,但它們在嚴格模式下表現得像。
ECMAScript 6 / ECMAScript 2015
A - E. | E - R. | S - Z. |
---|---|---|
break |
export |
super |
case |
extends |
switch |
catch |
finally |
this |
class |
for |
throw |
const |
function |
try |
continue |
if |
typeof |
debugger |
import |
var |
default |
in |
void |
delete |
instanceof |
while |
do |
new |
with |
else |
return |
yield |
未來保留關鍵字
以下是 ECMAScript 規範保留的未來關鍵字。它們目前沒有特殊功能,但它們可能在將來某個時間使用,因此它們不能用作識別符號。
enum |
只有在嚴格模式程式碼中找到以下內容時才會保留以下內容:
implements |
package |
public |
interface |
private |
static |
let |
protected |
舊標準中的未來保留關鍵字
以下是舊 ECMAScript 規範(ECMAScript 1 至 3)保留的未來關鍵字。
abstract |
float |
short |
boolean |
goto |
synchronized |
byte |
instanceof |
throws |
char |
int |
transient |
double |
long |
volatile |
final |
native |
此外,文字 null,true 和 false 不能用作 ECMAScript 中的識別符號。
來自 Mozilla 開發者網路 。