JavaScript Зарезервированные ключевые слова


В JavaScript некоторые идентификаторы являются зарезервированными ключевыми словами и не могут использоваться в качестве имён переменных или функций.


Стандарт JavaScript

Все современные браузеры полностью поддерживают ECMAScript 3 (ES3, третья редакция JavaScript, с 1999 года).

ECMAScript 4 (ES4) не был утверждён.

ECMAScript 5 (ES5, выпущен в 2009 году).

ECMAScript 6 (ES6, выпущенный в 2015 году), является последней официальной версией JavaScript.

Со временем мы начали видеть, что все современные браузеры полностью поддерживают ES6.


Зарезервированные ключевые слова JavaScript

Зарезервированные ключевые слова JavaScript нельзя использовать в качестве имён переменных, меток или имён функций. Некоторые зарезервированные ключевые слова зарезервированы для будущих расширений JavaScript.

abstract аргументы логическое значение break байт
case catch char class* const
continue debugger default удаление do
double else enum* eval export*
extends* false final finally float
for функция goto if implements
import* in instanceof int interface
let long native новый null
package private protected public return
short static super* switch synchronized
this throw throws transient истина
try typeof var void volatile
while with yield

Ключевые слова, отмеченные *, добавлены в ECMAScript 5.


Объекты, свойства и методы JavaScript

Также следует избегать использования имён встроенных объектов, свойств и методов JavaScript в качестве имён переменных или функций JavaScript:

Массив Date eval функция hasOwnProperty
Бесконечность 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


Зарезервированные ключевые слова Window

JavaScript можно использовать вне HTML. Его можно использовать как язык программирования во многих других приложениях.

В HTML вы должны (а для переносимости также должны) избегать использования имён объектов и свойств HTML и Window в качестве имён переменных и функций JavaScript:

alert all anchor anchors area
assign blur button checkbox clearInterval
clearTimeout clientInformation close closed confirm
constructor crypto decodeURI decodeURIComponent defaultStatus
document элемент элементов embed embeds
encodeURI encodeURIComponent escape event fileUpload
focus форма forms frame innerHeight
innerWidth слой layers link location
mimeTypes navigate navigator frames frameRate
hidden history image images offscreenBuffering
open opener option outerHeight outerWidth
packages pageXOffset pageYOffset parent parseFloat
parseInt пароль pkcs11 plugin prompt
propertyIsEnum radio сброс screenX screenY
scroll secure select self setInterval
setTimeout status submit taint text
textarea top unescape untaint window


Обработчики событий HTML

Кроме того, также следует избегать использования имён обработчиков событий HTML в качестве имён переменных и функций JavaScript.

Примеры:

onblur onclick onerror onfocus
onkeydown onkeypress onkeyup onmouseover
onload onmouseup onmousedown onsubmit

Другие расширения