JavaScript Зарезервовані слова
В JavaScript ви не можете використовувати ці зарезервовані слова як змінні, мітки або імена функцій:
| 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 |
Слова, відмічені *, є новими в ECMAScript 5 та 6.
Ви можете дізнатись більше про різні версії JavaScript в розділі JS Версії.
Видалені зарезервовані слова
Наступні зарезервовані слова були видалені зі стандарту ECMAScript 5/6:
| abstract | boolean | byte | char |
| double | final | float | goto |
| int | long | native | short |
| synchronized | throws | transient | volatile |
Не використовуйте ці слова як змінні. ECMAScript 5/6 ще не має повної підтримки в усіх браузерах.
Об’єкти, властивості та методи JavaScript
Також слід уникати використання імен вбудованих об’єктів, властивостей та методів JavaScript:
| Array | Date | eval | function |
| hasOwnProperty | Infinity | isFinite | isNaN |
| isPrototypeOf | length | Math | NaN |
| name | Number | Object | prototype |
| String | toString | undefined | valueOf |
Зарезервовані слова Java
JavaScript часто використовується разом з Java. Вам слід уникати використання деяких об’єктів та властивостей Java як ідентифікаторів JavaScript:
| getClass | java | JavaArray | javaClass |
| JavaObject | JavaPackage |
Інші зарезервовані слова
JavaScript можна використовувати як мову програмування в багатьох додатках.
Також слід уникати використання HTML та Window імен об’єктів та властивостей:
| 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 подій
Крім того, слід уникати використання імен всіх обробників подій HTML.
Приклади:
| onblur | onclick | onerror | onfocus |
| onkeydown | onkeypress | onkeyup | onmouseover |
| onload | onmouseup | onmousedown | onsubmit |

