Do not use the following words as names for variables, functions, methods, or objects.

The filters below show which are keywords, and which are reserved words in different versions of ECMA Script.

Reserved words and keywords by version:
abstract boolean break byte case catch char class const continue debugger default delete do double else enum 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

The reserved words in ES2 and ES3 were the same.
There was no ES4.

HTML and CSS Design and Build Websites
From the same team who made the best-selling book HTML & CSS: Design and Build Websites