JavaScript Reserved Words
Posted: Fri Oct 27, 2023 9:07 am
JavaScript Reserved Words
In JavaScript you cannot use these reserved words as variables, labels, or
function names:
abstract
arguments
await*
boolean
break
byte
case
catch
char
class*
const
continue
debugger
default
delete
do
double
else
enum*
eval
export*
extends*
false
final
finally
float
for
function
goto
if
implements
import*
in
instanceof
int
interface
let*
long
native
new
null
package
private
protected
public
return
short
static
super*
switch
synchronized
this
throw
throws
transient
true
try
typeof
var
void
volatile
while
with
yield
Words marked with* are new in ECMAScript 5 and 6.
You can read more about the different JavaScript versions in the chapter
JS Versions.
Removed Reserved Words
The following reserved words have been removed from the ECMAScript 5/6 standard:
abstract
boolean
byte
char
double
final
float
goto
int
long
native
short
synchronized
throws
transient
volatile
Do not use these words as variables. ECMAScript 5/6 does not have full support
in all browsers.
JavaScript Objects, Properties, and Methods
You should also avoid using the name of
JavaScript built-in objects, properties, and methods:
Array
Date
eval
function
hasOwnProperty
Infinity
isFinite
isNaN
isPrototypeOf
length
Math
NaN
name
Number
Object
prototype
String
toString
undefined
valueOf
Java Reserved Words
JavaScript is often used together with Java. You should avoid using some Java objects
and properties as JavaScript identifiers:
getClass
java
JavaArray
javaClass
JavaObject
JavaPackage
Other Reserved Words
JavaScript can be used as the programming
language in many applications.
You should also avoid using the name of HTML
and Window objects and properties:
alert
all
anchor
anchors
area
assign
blur
button
checkbox
clearInterval
clearTimeout
clientInformation
close
closed
confirm
constructor
crypto
decodeURI
decodeURIComponent
defaultStatus
document
element
elements
embed
embeds
encodeURI
encodeURIComponent
escape
event
fileUpload
focus
form
forms
frame
innerHeight
innerWidth
layer
layers
link
location
mimeTypes
navigate
navigator
frames
frameRate
hidden
history
image
images
offscreenBuffering
open
opener
option
outerHeight
outerWidth
packages
pageXOffset
pageYOffset
parent
parseFloat
parseInt
password
pkcs11
plugin
prompt
propertyIsEnum
radio
reset
screenX
screenY
scroll
secure
select
self
setInterval
setTimeout
status
submit
taint
text
textarea
top
unescape
untaint
window
HTML Event Handlers
In addition you should avoid using the name of all HTML event handlers.
Examples:
onblur
onclick
onerror
onfocus
onkeydown
onkeypress
onkeyup
onmouseover
onload
onmouseup
onmousedown
onsubmit
★
+1
Reference: https://www.w3schools.com/js/js_reserved.asp
In JavaScript you cannot use these reserved words as variables, labels, or
function names:
abstract
arguments
await*
boolean
break
byte
case
catch
char
class*
const
continue
debugger
default
delete
do
double
else
enum*
eval
export*
extends*
false
final
finally
float
for
function
goto
if
implements
import*
in
instanceof
int
interface
let*
long
native
new
null
package
private
protected
public
return
short
static
super*
switch
synchronized
this
throw
throws
transient
true
try
typeof
var
void
volatile
while
with
yield
Words marked with* are new in ECMAScript 5 and 6.
You can read more about the different JavaScript versions in the chapter
JS Versions.
Removed Reserved Words
The following reserved words have been removed from the ECMAScript 5/6 standard:
abstract
boolean
byte
char
double
final
float
goto
int
long
native
short
synchronized
throws
transient
volatile
Do not use these words as variables. ECMAScript 5/6 does not have full support
in all browsers.
JavaScript Objects, Properties, and Methods
You should also avoid using the name of
JavaScript built-in objects, properties, and methods:
Array
Date
eval
function
hasOwnProperty
Infinity
isFinite
isNaN
isPrototypeOf
length
Math
NaN
name
Number
Object
prototype
String
toString
undefined
valueOf
Java Reserved Words
JavaScript is often used together with Java. You should avoid using some Java objects
and properties as JavaScript identifiers:
getClass
java
JavaArray
javaClass
JavaObject
JavaPackage
Other Reserved Words
JavaScript can be used as the programming
language in many applications.
You should also avoid using the name of HTML
and Window objects and properties:
alert
all
anchor
anchors
area
assign
blur
button
checkbox
clearInterval
clearTimeout
clientInformation
close
closed
confirm
constructor
crypto
decodeURI
decodeURIComponent
defaultStatus
document
element
elements
embed
embeds
encodeURI
encodeURIComponent
escape
event
fileUpload
focus
form
forms
frame
innerHeight
innerWidth
layer
layers
link
location
mimeTypes
navigate
navigator
frames
frameRate
hidden
history
image
images
offscreenBuffering
open
opener
option
outerHeight
outerWidth
packages
pageXOffset
pageYOffset
parent
parseFloat
parseInt
password
pkcs11
plugin
prompt
propertyIsEnum
radio
reset
screenX
screenY
scroll
secure
select
self
setInterval
setTimeout
status
submit
taint
text
textarea
top
unescape
untaint
window
HTML Event Handlers
In addition you should avoid using the name of all HTML event handlers.
Examples:
onblur
onclick
onerror
onfocus
onkeydown
onkeypress
onkeyup
onmouseover
onload
onmouseup
onmousedown
onsubmit
★
+1
Reference: https://www.w3schools.com/js/js_reserved.asp