?

Языки.JavaScript_от_Mozilla
документация от Mozilla

' Подробный справочник по JavaScript.

Эта часть раздела MDN по JavaScript служит хранилищем фактов о языке JavaScript. Более подробную информацию об этом справочнике можно получить здесь.

Стандартные встроенные объекты JavaScript (Глобальные )

Глобальные свойства, возвращающие простое значение.

Infinity

NaN

undefined

null-литерал

Глобальные Функции

eval()

uneval()

isFinite()

isNaN()

parseFloat()

parseInt()

decodeURI()

decodeURIComponent()

encodeURI()

encodeURIComponent()

escape()

unescape()

'Фундаментальные объекты

Общие языковые объекты, функции и ошибки.

Object

Function

Boolean

Symbol

Error

EvalError

InternalError

RangeError

ReferenceError

SyntaxError

TypeError

URIError

'Числа и даты

Объекты, имеющие дело с числами, датами и математическими вычислениями.

Number

Math

Date

'Обработка текста

Объекты для манипулирования текстом.

String

Свойства экземпляров String
Методы экземпляров String

RegExp

'Индексированные коллекции

Коллекции, упорядоченные по индексам. Массивоподобные объекты.

Array

Int8Array

Uint8Array

Uint8ClampedArray

Int16Array

Uint16Array

Int32Array

Uint32Array

Float32Array

Float64Array

'Коллекции по ключу

Коллекции объектов по ключу. Элементы обходятся в порядке вставки.

Map

Set

WeakMap

WeakSet

'Структурированные данные

Буферы данных и Объектная нотация JavaScript (JavaScript Object Notation).

ArrayBuffer

DataView

JSON

Объекты управляющих абстракций

Promise

Рефлексия

Reflect

Proxy

'Интернационализация

Дополнения к ядру ECMAScript, отвечающие за функциональность, чувствительную к языку.

Intl

Intl.Collator

Intl.DateTimeFormat

Intl.NumberFormat

Нестандартные объекты

Generator

Iterator

ParallelArray

StopIteration

Прочее

Аргументы функции (arguments)

' Инструкции и объявления

Эта глава описывает все инструкции и объявления JavaScript.

Управление потоком выполнения

' Блок

Блок используется для группировки нуля и более инструкций. Блок отделяется парой фигурных скобок.

' break

Прерывает текущую инструкцию цикла, ветвления или инструкцию с меткой и передаёт управление на инструкцию, следующую за прерываемой.

' continue

Прерывает выполнение инструкции в текущей итерации текущего цикла или цикла с меткой и продолжает выполнение цикла со следующей итерации.

' Пустая инструкция

Пустая инструкция используется тогда, когда никакой инструкции быть не должно, а по синтаксису JavaScript она требуется.

' if...else

Выполняет инструкцию, если указанное условие является истинным. Если условие ложно, выполняет другую инструкцию.

' switch

Вычисляет выражение, сопоставляет вычисленное значение с выражением выбора и выполняет инструкции, ассоциированные с этим выбором.

' throw

Выбрасывает пользовательское исключение.

' try...catch

Помечает блок инструкций и определяет реакцию на возникновение исключения внутри помеченного блока инструкций.

Объявления

' var

Объявляет переменную, необязательно инициализирует её значением.

' let

Объявляет локальную переменную в области видимости блока, необязательно инициализирует её значением.

' const

Объявляет именованную константу только для чтения.

Функции

' function

Объявляет функцию с указанными параметрами.

' function*

Функции-генераторы, упрощающие написание итераторов.

' return

Определяет значение, возвращаемое из функции.

' yield

Смотрите статьи Что нового в JavaScript 1.7 и Итераторы и генераторы.

Итерации

' do...while

Создаёт цикл, выполняющий указанную инструкцию до тех пор, пока проверяющее условие равно false. Условие вычисляется после выполнения инструкции, так что указанная инструкция выполнится хотя бы один раз.

' for

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

' for each...in

Проходит указанной переменной по всем значениям свойств объекта. Выполняет инструкции для каждого уникального свойства.

' for...in

В случайном порядке проходит по перечислимым свойствам объекта. Выполняет инструкции для каждого уникального свойства.

for...of

″Проходит по итерируемым объектам (включающим в себя массивы, массивоподобные объекты и ♦итераторы с генераторами), выполняя пользовательский хук с инструкциями, исполняющимися для значения каждого уникального свойства.

' while

Создаёт цикл, выполняющий указанную инструкцию до тех пор, пока проверяющее условие равно true. Условие вычисляется перед выполнением инструкции..

Прочее

' debugger

Вызывает любую доступную функциональность отладки. Если функциональность отладки не доступна, эта инструкция ничего не делает.

' export

Используется для экспорта подписанным скриптом свойств, функций и объектов в другие подписанные или неподписанные скрипты. Эта древняя функциональность Netscape была удалена и будет пересмотрена модулями ECMAScript 6.

' import

Используется для импорта скриптом свойств, функций и объектов из подписанного скрипта, который предоставил эту информацию. Эта древняя функциональность Netscape была удалена и будет пересмотрена модулями ECMAScript 6.

' label

Предоставляет инструкцию с идентификатором, на который вы можете сослаться с помощью инструкций break или continue.

' with

Расширяет цепочку областей видимости инструкции.

' Выражения и операторы JavaScript

Эта глава описывает все выражения и операторы.

'Первичные выражения

Базовые ключевые слова и общие выражения в JavaScript.

' this

Ключевое слово this ссылается на контекст выполнения функции.

' function

Ключевое слово function определяет выражение функции.

' []

Синтаксис создания литерала массива.

' {}

Синтаксис создания литерала объекта.

' /ab+c/i

Синтаксис создания литерала регулярного выражения.

' [for (x of y) x]

Выражение заполнения массива.

' (for (x of y) y)

Выражение-генератор.

' ( )

Оператор группировки.

'Левосторонние выражения

Значения слева являются назначением присваивания.

' Доступ к свойству

Операторы доступа к членам предоставляют доступ к свойству или методу объекта (object.property и object['property']).

' new

Оператор new создаёт экземпляр конструктора.

' super

Ключевое слово super вызывает родительский конструктор.

' ...obj

Оператор распространения позволяет развернуть выражение в местах, где ожидается несколько аргументов (при вызове функций) или несколько элементов (при создании литералов массива).

'Инкремент и декремент

Операторы постфиксного/префиксного инкремента и декремента.

' A++

Оператор постфиксного инкремента.

' A--

Оператор постфиксного декремента.

' ++A

Оператор префиксного инкремента.

' --A

Оператор префиксного декремента.

'Унарные операторы

Унарные опарации— это операции с одним операндом.

' delete

Оператор delete удаляет свойство из объекта.

' void

Оператор void отбрасывает возвращаемое значение выражения.

' typeof

Оператор typeof определяет тип переданного объекта.

' +

Оператор унарного плюса преобразует свой операнд в тип Number.

' -

Оператор унарного минуса преобразует свой операнд в тип Number, а затем меняет его знак.

' ~

Оператор побитового НЕ.

' !

Оператор логического НЕ.

'Арифметические операторы

Арифметические операторы своими операндами принимают числовые значения (литерали или переменные) и возвращают одно числовое значение.

' +

Оператор сложения.

' -

Оператор вычитания.

' /

Оператор деления.

' *

Оператор умножения.

' %

Оператор взятия остатка от деления.

'Операторы отношения

Операторы отношения сравнивают свои операнды и возвращают значение типа Boolean, зависящее от того, был ли результат сравнения истинным или ложным.

' in

Оператор in определяет, содержит ли объект указанное свойство.

' instanceof

Оператор instanceof определяет, является ли объект экземпляром другого объекта.

' ˂

Оператор меньше.

' ˃

Оператор больше.

' ˂=

Оператор меньше или равно.

' ˃=

Оператор больше или равно.

'Операторы равенства

Результат вычисления оператора равенства всегда имеет тип Boolean и значение, зависящее от того, был ли результат проверки истинным или ложным.

' ==

Оператор проверки на равенство.

' !=

Оператор проверки на неравенство.

' ===

Оператор проверки на идентичность.

' !==

Оператор проверки на неидентичность.

'Операторы побитового сдвига

Операции для сдвига всех битов операнда.

' ˂˂

Оператор побитового сдвига влево.

' ˃˃

Оператор знакового побитового сдвига вправо.

' ˃˃˃

Оператор беззнакового побитового сдвига вправо.

'Бинарные побитовые операторы

Побитовые операторы трактуют свои операнды как набор из 32 битов (нулей и единиц) и возвращают стандартные числовые значения JavaScript.

' &

Оператор побитового И.

' |

Оператор побитового ИЛИ.

' ^

Оператор побитового ИСКЛЮЧАЮЩЕЕ ИЛИ.

'Бинарные логические операторы

Логические операторы обычно используются вместе с булевыми (логическими) значениями и в сочетании с ними они возвращают булево значение.

' &&

Оператор логического И.

' ||

Оператор логического ИЛИ.

Условный (тернарный) оператор

' (условие ? ifTrue : ifFalse)

Условный оператор возвращает одно значение из двух данных в зависимости от логического значения условия.

'Операторы присваивания

Операторы присваивания присваивают значение своему левому операнду, зависящее от значения их правого операнда.

' =

Оператор присваивания.

' *=

Оператор присваивания с умножением.

' /=

Оператор присваивания с делением.

' %=

Оператор присваивания с взятием остатка от деления.

' +=

Оператор присваивания со сложением.

' -=

Оператор присваивания с вычитанием.

' ˂˂=

Оператор присваивания со сдвигом влево.

' ˃˃=

Оператор присваивания со знаковым сдвигом вправо.

' ˃˃˃=

Оператор присваивания с беззнаковым сдвигом вправо.

' &=

Оператор присваивания с логическим И.

' ^=

Оператор присваивания с логическим ИСКЛЮЧАЮЩИМ ИЛИ.

' |=

Оператор присваивания с логическим ИЛИ.

' [a, b] = [1, 2] ♦{a, b} = {a:1, b:2}

Реструктуризующее присваивание позволяет вам присваивать свойства массива или объекта переменным с использованием синтаксиса, очень похожего на объявление литералов массива или объекта.

Оператор запятая

' ,

Оператор запятая позволяет вычислять несколько выражений в одном операторе в возвращает результат вычисления последнего выражения.

' Функции

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

arguments

Стрелочные функции

Параметры по умолчанию

Оставшиеся параметры

Дополнительные справочные страницы

Лексическая грамматика

Типы и структуры данных

Строгий режим

Устаревшие возможности

Метки документа

JavaScript

Все_категории

Инструменты и дополнительные ресурсы

Code School - Изучайте JS на практике. Содержит множество курсов JS.

Idiomatic.js - Принципы написания последовательного, идеоматического JavaScript.

Управление памятью в JavaScript-Обзор управления памятью в JavaScript.

Firebug - средства отладки и профилирования JavaScript.

Venkman - отладчик JavaScript.

JavaScript Shells - тестируйте код в шелле.

JSLint - средство проверки синтаксиса.

JSHint - средство проверки синтаксиса, разработанное сообществом.

JSDoc - генератор документации из кода.

Aptana Studio - Открытая среда разработки с поддержкой Ajax и JS (основана на Eclipse).

Netbeans - Открытая среда разработки с очень хорошей поддержкой JS.

Eclipse - Открытая среда разработки включающая в себя инстументы разработки на JS.

Cloud9 IDE - Открытая онлайн среда разработки JS с поддержкой Node.js.

Pretty Diff - инструмент diff для сравнения упакованного кода по сравнению с обычным.

Extension Developer's Extension - разнообразные расширения разработчика.

BoilerplateJS- Библиотека для интеграции JS кода.

※ Firefox Developer Tools (другие инструменты JavaScript)

расписать подробнее

Другие Источники

' JavaScript Garden

Ресурс с дополнительной информацией. Здесь можно узнать многие тонкости JS.

' JSWiki

Основанная на github вики, в которой указано множество существующих библиотек и ресурсов, посвященных JavaScript

' Stack Overflow

Вебсайт типа Q&A (Вопрос/Ответ), где можно поискать ответ на ваш вопрос, и если его нет, то задать вопрос самому.

' javascript.ru

Русскоязычный ресурс, посвященный языку JavaScript. Там же можно найти перевод ECMA стандарта.

Подробнее о JavaScript

ECMAScript.

SpiderMonkey - JavaScript движок используемый в Firefox;

Rhino - JavaScript движок написанный на Java;

Tamarin - ActionScript виртуальная машина (использованная в Adobe(r) Flash(r) Player);

Другие реализации(википедия).

Блог Брендана Эйка. Брендан создатель JavaScript и движка SpiderMonkey. Он все еще работает с рабочей группой ECMA чтобы развивать язык.

Дмитрий Сошников анализ ECMA-262 Edition 3 и 5

Web APIs

A

ANGLE_instanced_arrays

AbstractWorker

AnalyserNode

Animation

AnimationEvent

AnimationTimeline

ArrayBufferView

Attr

AudioBuffer

AudioBufferSourceNode

AudioContext

AudioDestinationNode

AudioListener

AudioNode

AudioParam

AudioProcessingEvent

B

BatteryManager

BeforeInstallPrompt

BeforeUnloadEvent

BiquadFilterNode

Blob

BlobBuilder

BlobEvent

Bluetooth

BluetoothAdvertisingData

BluetoothGATTService

BluetoothRemoteGATTCharacteristic

BluetoothRemoteGATTServer

BluetoothStatusChangedEvent

Body

BroadcastChannel

BufferSource

ByteString

C

CDATASection

CSS

CSSConditionRule

CSSCounterStyleRule

CSSGroupingRule

CSSKeyframeRule

CSSKeyframesRule

CSSMatrix

CSSMediaRule

CSSNamespaceRule

CSSPageRule

CSSPrimitiveValue

CSSRule

CSSRuleList

CSSStyleDeclaration

CSSStyleRule

CSSStyleSheet

CSSSupportsRule

CSSValue

CSSValueList

Cache

CacheStorage

CanvasCaptureMediaStream

CanvasGradient

CanvasImageSource

CanvasPattern

CanvasRenderingContext2D

CaretPosition

ChannelMergerNode

ChannelSplitterNode

CharacterData

ChildNode

ChromeWorker

Client

Clients

ClipboardEvent

CloseEvent

Comment

CompositionEvent

Console

ConvolverNode

Coordinates

Credential

CredentialsContainer

Crypto

CryptoKey

CustomEvent

D

DOMConfiguration

DOMError

DOMErrorHandler

DOMException

DOMHighResTimeStamp

DOMImplementation

DOMImplementationList

DOMImplementationRegistry

DOMImplementationSource

DOMLocator

DOMMatrix

DOMMatrixReadOnly

DOMObject

DOMParser

DOMPoint

DOMPointReadOnly

DOMRect

DOMRectReadOnly

DOMString

DOMStringList

DOMStringMap

DOMTimeStamp

DOMTokenList

DOMUserData

DataTransfer

DataTransferItem

DataTransferItemList

DedicatedWorkerGlobalScope

DelayNode

DeviceAcceleration

DeviceLightEvent

DeviceMotionEvent

DeviceOrientationEvent

DeviceProximityEvent

DeviceRotationRate

DirectoryEntry

DirectoryEntrySync

DirectoryReader

DirectoryReaderSync

Document

DocumentFragment

DocumentTimeline

DocumentTouch

DocumentType

DragEvent

DynamicsCompressorNode

E

EXT_blend_minmax

EXT_color_buffer_float

EXT_color_buffer_half_float

EXT_disjoint_timer_query

EXT_frag_depth

EXT_sRGB

EXT_shader_texture_lod

EXT_texture_filter_anisotropic

Element

ElementTraversal

Entity

EntityReference

Entry

EntrySync

ErrorEvent

Event

EventListener

EventSource

EventTarget

ExtendableEvent

ExtendableMessageEvent

F

FederatedCredential

FetchEvent

File

FileEntry

FileEntrySync

FileError

FileException

FileList

FileReader

FileReaderSync

FileRequest

FileSystem

FileSystemSync

FocusEvent

FontFace

FontFaceSet

FormData

G

GainNode

Gamepad

GamepadButton

GamepadEvent

Geolocation

GestureEvent

GlobalEventHandlers

GlobalFetch

H

HMDVRDevice

HTMLAnchorElement

HTMLAreaElement

HTMLAudioElement

HTMLBRElement

HTMLBaseElement

HTMLBaseFontElement

HTMLBodyElement

HTMLButtonElement

HTMLCanvasElement

HTMLCollection

HTMLContentElement

HTMLDListElement

HTMLDataElement

HTMLDataListElement

HTMLDialogElement

HTMLDivElement

HTMLDocument

HTMLElement

HTMLEmbedElement

HTMLFieldSetElement

HTMLFormControlsCollection

HTMLFormElement

HTMLFrameSetElement

HTMLHRElement

HTMLHeadElement

HTMLHeadingElement

HTMLHtmlElement

HTMLHyperlinkElementUtils

HTMLIFrameElement

HTMLImageElement

HTMLInputElement

HTMLIsIndexElement

HTMLKeygenElement

HTMLLIElement

HTMLLabelElement

HTMLLegendElement

HTMLLinkElement

HTMLMapElement

HTMLMediaElement

HTMLMetaElement

HTMLMeterElement

HTMLModElement

HTMLOListElement

HTMLObjectElement

HTMLOptGroupElement

HTMLOptionElement

HTMLOptionsCollection

HTMLOutputElement

HTMLParagraphElement

HTMLParamElement

HTMLPictureElement

HTMLPreElement

HTMLProgressElement

HTMLQuoteElement

HTMLScriptElement

HTMLSelectElement

HTMLShadowElement

HTMLSourceElement

HTMLSpanElement

HTMLStyleElement

HTMLTableCaptionElement

HTMLTableCellElement

HTMLTableColElement

HTMLTableDataCellElement

HTMLTableElement

HTMLTableHeaderCellElement

HTMLTableRowElement

HTMLTableSectionElement

HTMLTextAreaElement

HTMLTimeElement

HTMLTitleElement

HTMLTrackElement

HTMLUListElement

HTMLUnknownElement

HTMLVideoElement

HashChangeEvent

Headers

History

I

IDBCursor

IDBCursorSync

IDBCursorWithValue

IDBDatabase

IDBDatabaseException

IDBDatabaseSync

IDBEnvironment

IDBEnvironmentSync

IDBFactory

IDBFactorySync

IDBIndex

IDBIndexSync

IDBKeyRange

IDBLocaleAwareKeyRange

IDBMutableFile

IDBObjectStore

IDBObjectStoreSync

IDBOpenDBRequest

IDBRequest

IDBTransaction

IDBTransactionSync

IDBVersionChangeEvent

IDBVersionChangeRequest

IIRFilterNode

IdentityManager

ImageBitmap

ImageBitmapFactories

ImageBitmapRenderingContext

ImageData

Index

InputDeviceCapabilities

InputEvent

InstallEvent

InstallEvent

InstallTrigger

K

KeyboardEvent

KeyframeEffect

L

L10n.formatValue

L10n.get

L10n.language.code

L10n.language.direction

L10n.once

L10n.ready

L10n.readyState

L10n.setAttributes

LinkStyle

LocalFileSystem

LocalFileSystemSync

LocalMediaStream

Location

LockedFile

M

MIDIAccess

MIDIConnectionEvent

MIDIInput

MIDIInputMap

MIDIOutputMap

MSGestureEvent

MediaDeviceInfo

MediaDevices

MediaElementAudioSourceNode

MediaError

MediaKeyMessageEvent

MediaKeySession

MediaKeyStatusMap

MediaKeySystemAccess

MediaKeySystemConfiguration

MediaKeys

MediaQueryList

MediaQueryListListener

MediaRecorder

MediaSource

MediaStream

MediaStream.addTrack()

MediaStreamAudioDestinationNode

MediaStreamAudioSourceNode

MediaStreamEvent

MediaStreamTrack

MessageChannel

MessageEvent

MessagePort

MouseEvent

MouseScrollEvent

MouseWheelEvent

MutationEvent

MutationObserver

MutationRecord

N

NameList

NamedNodeMap

Navigator

NavigatorConcurrentHardware

NavigatorGeolocation

NavigatorID

NavigatorLanguage

NavigatorOnLine

NavigatorPlugins

NetworkInformation

Node

NodeFilter

NodeIterator

NodeList

NonDocumentTypeChildNode

Notation

Notification

NotificationEvent

NotifyAudioAvailableEvent

O

OES_element_index_uint

OES_standard_derivatives

OES_texture_float

OES_texture_float_linear

OES_texture_half_float

OES_texture_half_float_linear

OES_vertex_array_object

OfflineAudioCompletionEvent

OfflineAudioContext

OffscreenCanvas

OscillatorNode

P

PageTransitionEvent

PannerNode

ParentNode

PasswordCredential

Path2D

Performance

PerformanceEntry

PerformanceFrameTiming

PerformanceMark

PerformanceMeasure

PerformanceNavigation

PerformanceNavigationTiming

PerformanceObserver

PerformanceObserverEntryList

PerformanceResourceTiming

PerformanceTiming

PeriodicSyncEvent

PeriodicSyncManager

PeriodicSyncRegistration

PeriodicWave

PermissionStatus

Permissions

Plugin

PluginArray

Point

PointerEvent

PopStateEvent

PortCollection

Position

PositionError

PositionOptions

PositionSensorVRDevice

Presentation

PresentationAvailability

PresentationConnection

PresentationConnectionAvailableEvent

PresentationConnectionCloseEvent

PresentationRequest

ProcessingInstruction

ProgressEvent

PromiseRejection

PromiseRejectionEvent

PromiseResolver

PushEvent

PushManager

PushMessageData

PushRegistrationManager

PushSubscription

R

RTCCertificate

RTCConfiguration

RTCDataChannel

RTCDataChannelEvent

RTCIceCandidate

RTCIceServer

RTCIdentityAssertion

RTCIdentityErrorEvent

RTCIdentityEvent

RTCPeerConnection

RTCPeerConnectionIceEvent

RTCSessionDescription

RTCSessionDescriptionCallback

RTCStatsReport

RadioNodeList

RandomSource

Range

RenderingContext

Request

Response

S

SVGAElement

SVGAltGlyphElement

SVGAngle

SVGAnimateColorElement

SVGAnimateElement

SVGAnimateMotionElement

SVGAnimateTransformElement

SVGAnimatedAngle

SVGAnimatedBoolean

SVGAnimatedEnumeration

SVGAnimatedInteger

SVGAnimatedLength

SVGAnimatedLengthList

SVGAnimatedNumber

SVGAnimatedNumberList

SVGAnimatedPoints

SVGAnimatedPreserveAspectRatio

SVGAnimatedRect

SVGAnimatedString

SVGAnimatedTransformList

SVGAnimationElement

SVGCircleElement

SVGClipPathElement

SVGCursorElement

SVGDefsElement

SVGDescElement

SVGElement

SVGEllipseElement

SVGEvent

SVGFilterElement

SVGFontElement

SVGFontFaceElement

SVGFontFaceFormatElement

SVGFontFaceNameElement

SVGFontFaceSrcElement

SVGFontFaceUriElement

SVGForeignObjectElement

SVGGElement

SVGGlyphElement

SVGGradientElement

SVGHKernElement

SVGImageElement

SVGLength

SVGLengthList

SVGLineElement

SVGLinearGradientElement

SVGMPathElement

SVGMaskElement

SVGMatrix

SVGMissingGlyphElement

SVGNumber

SVGNumberList

SVGPathElement

SVGPatternElement

SVGPoint

SVGPolygonElement

SVGPolylineElement

SVGPreserveAspectRatio

SVGRadialGradientElement

SVGRect

SVGRectElement

SVGSVGElement

SVGScriptElement

SVGSetElement

SVGStopElement

SVGStringList

SVGStylable

SVGStyleElement

SVGSwitchElement

SVGSymbolElement

SVGTRefElement

SVGTSpanElement

SVGTests

SVGTextElement

SVGTextPositioningElement

SVGTitleElement

SVGTransform

SVGTransformList

SVGTransformable

SVGUseElement

SVGVKernElement

SVGViewElement

Screen

ScriptProcessorNode

Selection

ServiceWorker

ServiceWorkerContainer

ServiceWorkerGlobalScope

ServiceWorkerMessageEvent

ServiceWorkerRegistration

ServiceWorkerState

ShadowRoot

SharedWorker

SharedWorkerGlobalScope

SourceBuffer

SourceBufferList

SpeechGrammar

SpeechGrammarList

SpeechRecognition

SpeechRecognitionAlternative

SpeechRecognitionError

SpeechRecognitionEvent

SpeechRecognitionResult

SpeechRecognitionResultList

SpeechSynthesis

SpeechSynthesisErrorEvent

SpeechSynthesisEvent

SpeechSynthesisUtterance

SpeechSynthesisVoice

StereoPannerNode

Storage

StorageEvent

StyleSheet

StyleSheetList

SubtleCrypto

SyncEvent

SyncManager

T

Text

TextDecoder

TextEncoder

TextMetrics

TimeEvent

TimeRanges

Touch

TouchEvent

TouchList

TrackDefault

TrackDefaultList

Transferable

TransitionEvent

TreeWalker

TypeInfo

U

UIEvent

URL

URLSearchParams

URLUtilsReadOnly

USVString

UserDataHandler

UserProximityEvent

V

VRDisplay

VRDisplayCapabilities

VREyeParameters

VRFieldOfView

VRFieldOfViewReadOnly

VRLayer

VRPose

VRStageParameters

ValidityState

VideoPlaybackQuality

W

WEBGL_color_buffer_float

WEBGL_compressed_texture_atc

WEBGL_compressed_texture_es3

WEBGL_compressed_texture_etc1

WEBGL_compressed_texture_pvrtc

WEBGL_compressed_texture_s3tc

WEBGL_debug_renderer_info

WEBGL_debug_shaders

WEBGL_depth_texture

WEBGL_draw_buffers

WEBGL_lose_context

WaveShaperNode

WebGL

WebGL2RenderingContext

WebGLActiveInfo

WebGLBuffer

WebGLContextEvent

WebGLFramebuffer

WebGLProgram

WebGLQuery

WebGLRenderbuffer

WebGLRenderingContext

WebGLSampler

WebGLShader

WebGLShaderPrecisionFormat

WebGLSync

WebGLTexture

WebGLTimerQueryEXT

WebGLTransformFeedback

WebGLUniformLocation

WebGLVertexArrayObject

WebGLVertexArrayObjectOES

WebSocket

WebSockets

WebVTT

WheelEvent

Window

WindowBase64

WindowClient

WindowEventHandlers

WindowTimers

Worker

WorkerGlobalScope

WorkerLocation

WorkerNavigator

X

XDomainRequest

XMLDocument

XMLHttpRequest

XMLHttpRequestEventTarget

XMLSerializer

XPathExpression

XPathResult

XSLTProcessor

DOM.

Справочная информация по Gecko DOM

Об объектной модели документа

Динамически изменяемый пользовательский интерфейс на XUL

DOM и JavaScript

Объектная модель документа Mozilla

Firebug

DOM Inspector

Mouse-over DOM Inspector

Aardvark Firefox extension

Обучение

Уроки:

' Руководство по JavaScript

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

Вступление

Грамматика и типы

Порядок выполнения и обработка ошибок

Циклы и итерации

Функции

Выражения и операторы

Числа и даты

Форматирование текста

Регулярные выражения

Упорядоченные наборы данных

Коллекции

Работа с объектами

Подробнее об объектной модели

Итераторы и генераторы

Метапрограммирование

Базовые

Основы JavaScript

' Обзор технологий JavaScript

Введение в JavaScript для веб-браузеров.

' Введение в объектно-ориентированный JavaScript

Введение в концепции объектно-ориентированного программирования на JavaScript.

Средние

' Повторное введение в JavaScript

Обзор для тех, кто думает, что знает JavaScript.

' Структуры данных JavaScript

Обзор существующих структур данных в JavaScript.

' Проверки на равенство и когда их использовать

JavaScript предоставляет три различных оператора равенства значений: строгой типизации ===, с приведением типов == и метод Object.is доступный в (ECMAScript6).

Замыкания

Продвинутые

' Наследование и цепочка прототипов

Статья разъясняет бытующие заблуждения и недооцененность наследования, основанного на прототипах.

' Строгий режим

Строгий режим в JavaScript.

' Типизированные массивы JavaScript

Типизированные массивы предоставляют механизм для работы с необработанными двоичными данными.

SIMD типы

' Управление памятью

Жизненный цикл памяти и сборка мусора в JavaScript.

Модель совпадения и циклы событий

' Обучение canvas

˂canvas˃ - это элемент HTML5 предназначенный для создания растрового двухмерного изображения при помощи скриптов, например, для рисования графиков, создания фото-композиций или анимации.

Основы

Рисование фигур

Использование картинок

Применение стилей и цветов

Трансформации

Композиция

Основы анимации

Страница элемента canvas

Рисование при помощи canvas

Справочная информация:

Встроенные объекты

Array

ArrayBuffer

Atomics [Перевести]

Boolean

DataView [Перевести]

Date

Error

EvalError

Float32Array

Float64Array [Перевести]

Function

Generator [Перевести]

GeneratorFunction [Перевести]

Infinity

Int16Array [Перевести]

Int32Array [Перевести]

Int8Array [Перевести]

InternalError

Intl

Intl.Collator

Intl.DateTimeFormat

Intl.NumberFormat

Iterator

JSON

Map

Math

NaN

Number

Object

ParallelArray

Promise

Прокси

RangeError

ReferenceError

Reflect

RegExp

SIMD [Перевести]

SIMD.Bool16x8 [Перевести]

SIMD.Bool32x4 [Перевести]

SIMD.Bool64x2 [Перевести]

SIMD.Bool8x16 [Перевести]

SIMD.Float32x4 [Перевести]

SIMD.Float64x2 [Перевести]

SIMD.Int16x8 [Перевести]

SIMD.Int32x4 [Перевести]

SIMD.Int8x16 [Перевести]

SIMD.Uint16x8 [Перевести]

SIMD.Uint32x4 [Перевести]

SIMD.Uint8x16 [Перевести]

Set

SharedArrayBuffer [Перевести]

StopIteration [Перевести]

String

Symbol

SyntaxError

TypeError

TypedArray

URIError

Uint16Array [Перевести]

Uint32Array [Перевести]

Uint8Array [Перевести]

Uint8ClampedArray [Перевести]

WeakMap

WeakSet

decodeURI()

decodeURIComponent()

encodeURI()

encodeURIComponent()

escape()

eval()

isFinite()

isNaN

null

parseFloat()

parseInt()

undefined

unescape()

uneval()

Выражения и операторы

Арифметические операции

Array comprehensions

Операторы присваивания

Битовые операции

Оператор Запятая

Операторы сравнения

Условный (тернарный) оператор

Деструктурирующее присваивание

Expression closures

Включения генераторов (Generator comprehensions)

Оператор группировки

Legacy generator function expression [Перевести]

Логические операторы

Object initializer [Перевести]

Приоритет операторов

Property accessors

Оператор расширения

class expression [Перевести]

delete

function expression

function* expression

in operator

instanceof

Оператор new

new.target

super

this

typeof

void operator

yield

yield*

Инструкции и объявления

Legacy generator function [Перевести]

block [Перевести]

break

class [Перевести]

const

continue

debugger [Перевести]

default [Перевести]

do...while [Перевести]

Пустое выражение

export

for

for each...in [Перевести]

for...in

for...of

Функция

function*

if...else

import

label

let

return

switch

throw

try...catch [Перевести]

var

while [Перевести]

with [Перевести]

Функции

Arguments object

Стрелочные функции

Параметры по умолчанию

Определение методов

Оставшиеся параметры

getter

setter [Перевести]

Классы

constructor

extends [Перевести]

static

Ошибки

Error: Permission denied to access property "x" [Перевести]

InternalError: too much recursion [Перевести]

RangeError: argument is not a valid code point [Перевести]

RangeError: invalid array length [Перевести]

RangeError: precision is out of range [Перевести]

RangeError: radix must be an integer [Перевести]

RangeError: repeat count must be less than infinity [Перевести]

RangeError: repeat count must be non-negative [Перевести]

ReferenceError: "x" is not defined [Перевести]

ReferenceError: assignment to undeclared variable "x" [Перевести]

ReferenceError: deprecated caller or arguments usage [Перевести]

ReferenceError: invalid assignment left-hand side [Перевести]

ReferenceError: reference to undefined property "x" [Перевести]

SyntaxError: "x" is not a legal ECMA-262 octal constant [Перевести]

SyntaxError: JSON.parse: bad parsing [Перевести]

SyntaxError: Malformed formal parameter [Перевести]

SyntaxError: Unexpected token [Перевести]

SyntaxError: Using //@ to indicate sourceURL pragmas is deprecated. Use //# instead [Перевести]

SyntaxError: missing ) after argument list [Перевести]

SyntaxError: missing ; before statement [Перевести]

SyntaxError: missing ] after element list [Перевести]

SyntaxError: missing } after property list [Перевести]

SyntaxError: redeclaration of formal parameter "x" [Перевести]

SyntaxError: return not in function [Перевести]

SyntaxError: test for equality (==) mistyped as assignment (=)? [Перевести]

SyntaxError: unterminated string literal [Перевести]

TypeError: "x" has no properties [Перевести]

TypeError: "x" is (not) "y" [Перевести]

TypeError: "x" is not a constructor [Перевести]

TypeError: "x" is not a function

TypeError: "x" is read-only [Перевести]

TypeError: More arguments needed [Перевести]

TypeError: invalid Array.prototype.sort argument [Перевести]

TypeError: property "x" is non-configurable and can't be deleted [Перевести]

TypeError: variable "x" redeclares argument [Перевести]

Warning: -file- is being assigned a //# sourceMappingURL, but already has one [Перевести]

Warning: JavaScript 1.6's for-each-in loops are deprecated [Перевести]

Warning: unreachable code after return statement

Ещё

Лексическая грамматика

Структуры данных JavaScript

Перечисляемость и принадлежность свойств

Протоколы перебора

Строгий режим

Переход в строгий режим

Шаблонные строки

Устаревшие возможности

Новое в JavaScript

Поддержка ECMAScript 5 в Mozilla

Поддержка ECMAScript 6 в Mozilla

Поддержка ECMAScript 7 в Mozilla

Firefox JavaScript changelog

New in JavaScript 1.1 [Перевести]

New in JavaScript 1.2 [Перевести]

New in JavaScript 1.3 [Перевести]

New in JavaScript 1.4 [Перевести]

Новое в JavaScript 1.5

Новое в JavaScript 1.6

Новое в JavaScript 1.7

New in JavaScript 1.8

New in JavaScript 1.8.1 [Перевести]

Новое в JavaScript 1.8.5

Документация:

Полезные списки

Индекс всех страниц

Индекс методов

Индекс свойств

Страницы, помеченные «JavaScript»

Внести свой вклад

Статус документации по JavaScript

Проект MDN

MDN

Веб-технологии для разработчиков

HTML

CSS

JavaScript

Веб API

Справочник по веб API

WebAPI

SVG

WebGL

MathML

Руководство веб-разработчика

Учебные материалы для веб-разработчиков

Справочные материалы

https://developer.mozilla.org/ru/Apps Центр приложений

Общедоступность

Безопасность