Включение JavaScript в HTML-страницу
Чтобы включить JavaScript внутри страницы, вам нужно заключить его в <script>
теги:
<тип сценария="текст/javascript"> //здесь будет код JS </скрипт>
С помощью этого ввода браузер может правильно идентифицировать и выполнить код.
Вызов внешнего файла JavaScript
Вы также можете поместить JavaScript в отдельный файл и назвать его внутри вашего HTML. Таким образом, вы можете хранить разные типы кода отдельно друг от друга, что позволяет лучше организовать файлы. Если ваш код находится в файле с именем myscript.js
, вы бы назвали его:
<script src="myscript.js"></script>
Включите комментарии
Комментарии важны, потому что они помогают другим людям понять, что происходит в вашем коде, или напоминают вам, если вы сами что-то забыли. Имейте в виду, что они должны быть правильно помечены, чтобы браузер не пытался их выполнить.
В JavaScript у вас есть два разных варианта:
- Однострочные комментарии — чтобы включить комментарий, который ограничен одной строкой, перед ним
//
- Многострочные комментарии. Если вы хотите написать более длинные комментарии между несколькими строками, заверните их в
/*
и избежите их выполнения*/
.
Переменные в JavaScript
Переменные — это резервные значения, которые можно использовать для выполнения операций. Вы должны быть знакомы с ними из урока математики.
var, const, let
У вас есть три различных возможности объявления переменной в JavaScript, каждая из которых имеет свои особенности:
var
— Самая распространенная переменная. Его можно переназначить, но доступ к нему возможен только внутри функции. Переменные, определенные с помощьюvar
перемещения наверх при выполнении кода.const
— Не могут быть переназначены и недоступны до того, как они появятся в коде.let
— Подобноconst
,let
переменная может быть переназначена, но не объявлена повторно.
Типы данных
Переменные могут содержать различные типы значений и типов данных. Вы используете =
для их назначения:
- Числа —
var age = 23
- Переменные —
var x
- Текст (строки) —
var a = "init"
- Операции —
var b = 1 + 2 + 3
- Верные или ложные утверждения —
var c = true
- Постоянные числа —
const PI = 3.14
- Объекты —
var name = {firstName:"John", lastName:"Doe"}
Есть больше возможностей. Обратите внимание, что переменные чувствительны к регистру. Это означает, что lastname
и lastName
будут обрабатываться как две разные переменные.
Объекты
Объекты — это определенные виды переменных. Это переменные, которые могут иметь свои собственные значения и методы. Последние — это действия, которые вы можете выполнять над объектами.
var man = { Name: "Джон", LastName: "Доу", Age: 20, Nation: "немец" };
Следующий уровень: массивы
Далее в нашей шпаргалке по JavaScript идут массивы. Массивы являются частью многих различных языков программирования. Это способ организации переменных и свойств в группы. Вот как создать его в JavaScript:
var fruit = ["Банан", "Яблоко", "Груша"];
Теперь у вас есть вызванный массив fruit
, содержащий три элемента, которые вы можете использовать для будущих операций.
Методы массива
После того, как вы создали массивы, вы можете сделать с ними несколько вещей:
concat()
— Объединение нескольких массивов в одинindexOf()
— Возвращает первую позицию, в которой данный элемент появляется в массивеjoin()
— Объединить элементы массива в одну строку и вернуть строкуlastIndexOf()
— Дает последнюю позицию, в которой данный элемент появляется в массивеpop()
— Удаляет последний элемент массиваpush()
— Добавить новый элемент в концеreverse()
— Сортировать элементы в порядке убыванияshift()
— Удалить первый элемент массиваslice()
— Извлекает копию части массива в новый массивsort()
— Сортирует элементы по алфавитуsplice()
— Добавляет элементы в указанном порядке и положенииtoString()
— Преобразует элементы в строкиunshift()
— добавляет новый элемент в началоvalueOf()
— Возвращает примитивное значение указанного объекта
Операторы
Если у вас есть переменные, вы можете использовать их для выполнения различных операций. Для этого вам нужны операторы.
Основные операторы
+
- Добавление-
— Вычитание*
— Умножение/
— Деление(...)
— Оператор группировки, операции внутри скобок выполняются раньше, чем снаружи%
— Модуль (остаток)++
— Увеличение числа--
— Уменьшение числа
Операторы сравнения
==
— Равно===
— Равное значение и одинаковый тип!=
— Не равно!==
— Не равно значение или не равный тип>
— Больше чем<
— Меньше, чем>=
— Больше или равно<=
— Меньше или равно?
— Тернарный оператор
Логические операторы
&&
— Логическое и||
— Логическое или!
— Логическое не
Побитовые операторы
&
— оператор И|
— оператор ИЛИ~
— НЕТ^
— Исключающее ИЛИ<<
— Сдвиг влево>>
— Правый сдвиг>>>
— Нулевое заполнение правым сдвигом
Функции
Функции JavaScript — это блоки кода, выполняющие определенную задачу. Базовая функция выглядит так:
function имя_функции (параметр1, параметр2, параметр3) { // что делает функция }
Как видите, она состоит из function
ключевого слова и имени. Параметры функции заключены в скобки, а то, что функция выполняет, заключено в фигурные скобки. Вы можете создать свою собственную функцию, но чтобы облегчить себе жизнь — есть также ряд функций по умолчанию.
Вывод данных
Обычным применением функций является вывод данных. Для вывода у вас есть следующие варианты:
alert()
— Вывод данных в алертбокс в окне браузераconfirm()
— Открывает диалоговое окно да/нет и возвращает true/false в зависимости от клика пользователя.console.log()
— Записывает информацию в консоль браузера, подходит для целей отладки.document.write()
— Запись непосредственно в HTML-документprompt()
— Создает диалог для пользовательского ввода
Глобальные функции
Глобальные функции — это функции, встроенные в каждый браузер, поддерживающий JavaScript.
decodeURI()
— Декодирует универсальный идентификатор ресурса (URI), созданныйencodeURI
или аналогичныйdecodeURIComponent()
— Декодирует компонент URIencodeURI()
— Кодирует URI в UTF-8.encodeURIComponent()
— То же, но для компонентов URIeval()
— Оценивает код JavaScript, представленный в виде строкиisFinite()
— Определяет, является ли переданное значение конечным числомisNaN()
— Определяет, является ли значение NaN или нетNumber()
— Возвращает число, преобразованное из его аргументаparseFloat()
— Разбирает аргумент и возвращает число с плавающей запятойparseInt()
— Разбирает свой аргумент и возвращает целое число
Циклы JavaScript
Циклы являются частью большинства языков программирования. Они позволяют выполнять блоки кода нужное количество раз с разными значениями:
for (перед циклом; условие цикла; выполнение после цикла) { // что делать во время цикла }
У вас есть несколько параметров для создания циклов:
for
— Самый распространенный способ создания цикла в JavaScript.while
— Устанавливает условия, при которых выполняется циклdo while
— Аналогиченwhile
циклу, но выполняется хотя бы один раз и в конце проверяется, выполняется ли условие для повторного выполнения.break
— Используется для остановки и выхода из цикла при определенных условиях.continue
— Пропускать части цикла, если выполняются определенные условия
Операторы If – Else
Эти типы утверждений легко понять. Используя их, вы можете установить условия выполнения вашего кода. Если выполняются определенные условия, что-то делается, если нет — выполняется что-то другое.
if (условие) { // что делать, если условие выполнено } else { // что делать, если условие не выполнено }
Аналогичным понятием if else
является switch
заявление. Однако с помощью переключателя вы выбираете один из нескольких блоков кода для выполнения.
Строки
Строки — это то, что JavaScript вызывает для текста, который не выполняет никакой функции, но может отображаться на экране.
var person = "Джон Доу";
В данном случае John Doe
это строка.
Экранирующие символы
В JavaScript строки помечаются одинарными или двойными кавычками. Если вы хотите использовать кавычки в строке, вам нужно использовать специальные символы:
\'
— Одинарная цитата\"
— Двойная кавычка
Помимо этого у вас также есть дополнительные escape-символы:
\\
— обратная косая черта\b
— Возврат\f
— Подача формы\n
— Новая линия\r
— Возврат каретки\t
— Горизонтальный табулятор\v
— Вертикальный табулятор
Строковые методы
Существует множество различных способов работы со строками:
charAt()
— Возвращает символ в указанной позиции внутри строкиcharCodeAt()
— Дает вам Unicode символа в этой позицииconcat()
— Объединяет (объединяет) две или более строк в однуfromCharCode()
— Возвращает строку, созданную из указанной последовательности кодовых единиц UTF-16.indexOf()
— Предоставляет позицию первого вхождения указанного текста в строкеlastIndexOf()
— То же,indexOf()
но с последним вхождением, поиск назадmatch()
— Извлекает совпадения строки с шаблоном поискаreplace()
— Найти и заменить указанный текст в строкеsearch()
— Выполняет поиск совпадающего текста и возвращает его позициюslice()
— Извлекает часть строки и возвращает ее как новую строкуsplit()
— Разбивает строковый объект на массив строк в указанной позицииsubstr()
— Аналогично,slice()
но извлекает подстроку в зависимости от указанного количества символовsubstring()
— Также аналогично,slice()
но не может принимать отрицательные индексыtoLowerCase()
— Преобразование строк в нижний регистрtoUpperCase()
— Преобразование строк в верхний регистрvalueOf()
— Возвращает примитивное значение (у которого нет свойств или методов) строкового объекта.
Синтаксис регулярных выражений
Регулярные выражения — это шаблоны поиска, используемые для сопоставления комбинаций символов в строках. Шаблон поиска можно использовать для текстового поиска и операций замены текста.
Модификаторы узоров
e
— оценить заменуi
— Выполнять сопоставление без учета регистраg
— Выполнить глобальное сопоставлениеm
— Выполнить сопоставление нескольких строкs
— Рассматривать строки как одну строкуx
— Разрешить комментарии и пробелы в шаблонеU
— Нежадный паттерн
Скобки
[abc]
— Найдите любой из символов в скобках[^abc]
— Найти любой символ, которого нет в скобках[0-9]
— Используется для поиска любой цифры от 0 до 9[A-z]
— Найти любой символ от прописной A до строчной z(a|b|c)
— Найдите любую из альтернатив, разделенных знаком|
Метасимволы
.
— Найти один символ, кроме символа новой строки или конца строки\w
— символ слова\W
— несловесный символ\d
— цифра\D
— Нецифровой символ\s
— пробельный символ\S
— Непробельный символ\b
— Найти совпадение в начале/конце слова\B
— Совпадение не в начале/конце слова\0
— нулевой символ\n
— Новый символ строки\f
— Символ подачи формы\r
— символ возврата каретки\t
— символ табуляции\v
— Символ вертикальной табуляции\xxx
— Символ, указанный восьмеричным числом xxx\xdd
— Символ, заданный шестнадцатеричным числом dd\uxxxx
— Символ Unicode, заданный шестнадцатеричным числом XXXX.
Квантификаторы
n+
— Соответствует любой строке, содержащей хотя бы один nn*
— Любая строка, содержащая ноль или более вхождений nn?
— Строка, содержащая ноль или одно вхождение nn{X}
— Строка, содержащая последовательность X nn{X,Y}
— Строки, содержащие последовательность от X до Y nn{X,}
— Соответствует любой строке, содержащей последовательность не менее X nn$
— Любая строка с n в конце^n
— Строка с n в начале?=n
— Любая строка, за которой следует определенная строка n?!n
— Строка, за которой не следует определенная строка ni
Числа и математика
В JavaScript вы также можете работать с числами, константами и выполнять математические функции.
Свойства номера
MAX_VALUE
— Максимальное числовое значение, которое может быть представлено в JavaScriptMIN_VALUE
— Наименьшее положительное числовое значение, которое может быть представлено в JavaScriptNaN
— Значение «Не число»NEGATIVE_INFINITY
— Отрицательное значение бесконечностиPOSITIVE_INFINITY
— Положительное значение бесконечности
Числовые методы
toExponential()
— Возвращает строку с округленным числом, записанным в экспоненциальной записиtoFixed()
— Возвращает строку числа с указанным количеством десятичных знаковtoPrecision()
— Строка числа, записанная с указанной длинойtoString()
— Возвращает число в виде строкиvalueOf()
— Возвращает число как число
Математические свойства
E
— число ЭйлераLN2
— Натуральный логарифм 2LN10
— Натуральный логарифм 10LOG2E
— Логарифм E по основанию 2LOG10E
— Логарифм E по основанию 10PI
— Число ПиSQRT1_2
— Квадратный корень из 1/2SQRT2
— Квадратный корень из 2
Математические методы
abs(x)
— Возвращает абсолютное (положительное) значение xacos(x)
— Арккосинус x, в радианахasin(x)
— Арксинус x, в радианахatan(x)
— Арктангенс x как числовое значениеatan2(y,x)
— Арктангенс частного его аргументовceil(x)
— Значение x, округленное до ближайшего целого числа.cos(x)
— Косинус x (x в радианах)exp(x)
— Значение Е хfloor(x)
— Значение x, округленное в меньшую сторону до ближайшего целого числаlog(x)
— Натуральный логарифм (по основанию E) числа xmax(x,y,z,...,n)
— Возвращает число с наибольшим значениемmin(x,y,z,...,n)
— То же самое для числа с наименьшим значениемpow(x,y)
— X в степени yrandom()
— Возвращает случайное число от 0 до 1round(x)
— Значение x, округленное до ближайшего целого числаsin(x)
— Синус x (x в радианах)sqrt(x)
— Квадратный корень из хtan(x)
— Тангенс угла
Работа с датами в JavaScript
Вы также можете работать с датами и временем и изменять их с помощью JavaScript. Это следующая глава шпаргалки по JavaScript.
Установка дат
Date()
— Создает новый объект даты с текущей датой и временемDate(2017, 5, 21, 3, 23, 10, 0)
— Создать пользовательский объект даты. Цифры обозначают год, месяц, день, час, минуты, секунды, миллисекунды. Вы можете опустить все, что хотите, кроме года и месяца.Date("2017-06-23")
— Объявление даты в виде строки
Извлечение значений даты и времени
getDate()
— Получить день месяца в виде числа (1-31)getDay()
— День недели в виде числа (0-6)getFullYear()
— Год в виде четырехзначного числа (гггг)getHours()
— Получить час (0-23)getMilliseconds()
— Миллисекунда (0-999)getMinutes()
— Получить минуты (0-59)getMonth()
— Месяц в виде числа (0-11)getSeconds()
— Получить второй (0-59)getTime()
— Получить миллисекунды с 1 января 1970 года.getUTCDate()
— День (число) месяца в указанную дату по всемирному времени (также доступно для дня, месяца, полного года, часов, минут и т. д.)parse
— Разбирает строковое представление даты и возвращает количество миллисекунд с 1 января 1970 года.
Установить часть даты
setDate()
— Установите день в виде числа (1-31)setFullYear()
— Устанавливает год (необязательно месяц и день)setHours()
— Установить час (0-23)setMilliseconds()
— Установить миллисекунды (0-999)setMinutes()
— Устанавливает минуты (0-59)setMonth()
— Установите месяц (0-11)setSeconds()
— Устанавливает секунды (0-59)setTime()
— Установите время (в миллисекундах с 1 января 1970 г.)setUTCDate()
— Устанавливает день месяца для указанной даты по универсальному времени (также доступно для дня, месяца, полного года, часов, минут и т. д.)
Режим DOM
DOM — это объектная модель документа страницы. Это код структуры веб-страницы. В JavaScript есть множество различных способов создания элементов HTML (называемых узлами) и управления ими.
Свойства узла
attributes
— Возвращает динамическую коллекцию всех атрибутов, зарегистрированных для элемента.baseURI
— Предоставляет абсолютный базовый URL-адрес HTML-элемента.childNodes
— Дает коллекцию дочерних узлов элементаfirstChild
— Возвращает первый дочерний узел элементаlastChild
— Последний дочерний узел элементаnextSibling
— Дает вам следующий узел на том же уровне дерева узловnodeName
— возвращает имя узлаnodeType
— Возвращает тип узлаnodeValue
— Устанавливает или возвращает значение узлаownerDocument
— Объект документа верхнего уровня для этого узлаparentNode
— Возвращает родительский узел элементаpreviousSibling
— Возвращает узел, непосредственно предшествующий текущемуtextContent
— Задает или возвращает текстовое содержимое узла и его потомков
Методы узла
appendChild()
— Добавляет новый дочерний узел к элементу как последний дочерний узелcloneNode()
— Клонирует элемент HTMLcompareDocumentPosition()
— Сравнивает позицию документа двух элементовgetFeature()
— Возвращает объект, который реализует API указанной функции.hasAttributes()
— Возвращает true, если элемент имеет какие-либо атрибуты, иначе falsehasChildNodes()
— Возвращает true, если у элемента есть дочерние узлы, иначе falseinsertBefore()
— Вставляет новый дочерний узел перед указанным существующим дочерним узлом.isDefaultNamespace()
— Возвращает true, если указанный namespaceURI является значением по умолчанию, в противном случае — false.isEqualNode()
— Проверяет, равны ли два элементаisSameNode()
— Проверяет, являются ли два элемента одним и тем же узломisSupported()
— Возвращает true, если указанная функция поддерживается элементом.lookupNamespaceURI()
— Возвращает URI пространства имен, связанный с данным узлом.lookupPrefix()
— Возвращает DOMString, содержащую префикс для заданного URI пространства имен, если он присутствует.normalize()
— Соединяет соседние текстовые узлы и удаляет пустые текстовые узлы в элементе.removeChild()
— Удаляет дочерний узел из элементаreplaceChild()
— Заменяет дочерний узел в элементе
Методы элемента
getAttribute()
— Возвращает указанное значение атрибута узла элементаgetAttributeNS()
— Возвращает строковое значение атрибута с указанным пространством имен и именемgetAttributeNode()
— Получает указанный узел атрибутаgetAttributeNodeNS()
— Возвращает узел атрибута для атрибута с заданным пространством имен и именем.getElementsByTagName()
— Предоставляет коллекцию всех дочерних элементов с указанным именем тегаgetElementsByTagNameNS()
— Возвращает живую HTMLCollection элементов с определенным именем тега, принадлежащим заданному пространству имен.hasAttribute()
— Возвращает true, если элемент имеет какие-либо атрибуты, иначе falsehasAttributeNS()
— Предоставляет значение true/false, указывающее, имеет ли текущий элемент в заданном пространстве имен указанный атрибут.removeAttribute()
— Удаляет указанный атрибут из элементаremoveAttributeNS()
— Удаляет указанный атрибут из элемента в пределах определенного пространства именremoveAttributeNode()
— Забирает указанный узел атрибута и возвращает удаленный узелsetAttribute()
— Устанавливает или изменяет указанный атрибут на указанное значениеsetAttributeNS()
— Добавляет новый атрибут или изменяет значение атрибута с заданным пространством имен и именемsetAttributeNode()
— Устанавливает или изменяет указанный узел атрибутаsetAttributeNodeNS()
— Добавляет к элементу новый узел атрибута с пространством имен.
Работа с браузером пользователей
Помимо элементов HTML, JavaScript также может учитывать браузер пользователя и включать его свойства в код.
Свойства окна
closed
— Проверяет, было ли окно закрыто или нет, и возвращает true или falsedefaultStatus
— Задает или возвращает текст по умолчанию в строке состояния окна.document
— Возвращает объект документа для окнаframes
— Возвращает все<iframe>
элементы в текущем окнеhistory
— Предоставляет объект History для окнаinnerHeight
— Внутренняя высота области содержимого окна.innerWidth
— Внутренняя ширина области содержимогоlength
— Узнать количество<iframe>
элементов в окнеlocation
— Возвращает объект местоположения для окнаname
— Задает или возвращает имя окнаnavigator
— Возвращает объект Navigator для окнаopener
— Возвращает ссылку на окно, создавшее окноouterHeight
— Внешняя высота окна, включая панели инструментов/полосы прокрутки.outerWidth
— Внешняя ширина окна, включая панели инструментов/полосы прокрутки.pageXOffset
— Количество пикселей, на которое текущий документ был прокручен по горизонталиpageYOffset
— Количество пикселей, на которое документ был прокручен по вертикалиparent
— Родительское окно текущего окнаscreen
— Возвращает объект Screen для окнаscreenLeft
— Горизонтальная координата окна (относительно экрана)screenTop
— Вертикальная координата окнаscreenX
— То же, чтоscreenLeft
и для некоторых браузеровscreenY
— То же, чтоscreenTop
и для некоторых браузеровself
— Возвращает текущее окноstatus
— Задает или возвращает текст в строке состояния окнаtop
— Возвращает самое верхнее окно браузера
Оконные методы
alert()
— Отображает окно предупреждения с сообщением и кнопкой OK.blur()
— Убирает фокус с текущего окнаclearInterval()
— Очищает таймер, установленный с помощьюsetInterval()
clearTimeout()
— Очищает таймер, установленный с помощьюsetTimeout()
close()
— Закрывает текущее окноconfirm()
— Отображает диалоговое окно с сообщением и кнопками « ОК » и « Отмена ».focus()
— Устанавливает фокус на текущее окноmoveBy()
— Перемещает окно относительно его текущей позицииmoveTo()
— Перемещает окно в указанную позициюopen()
— Открывает новое окно браузераprint()
— Печатает содержимое текущего окнаprompt()
— Отображает диалоговое окно, предлагающее посетителю ввести данныеresizeBy()
— Изменяет размер окна на указанное количество пикселей.resizeTo()
— Изменяет размер окна до указанной ширины и высотыscrollBy()
— прокручивает документ на указанное количество пикселейscrollTo()
— Прокручивает документ до указанных координатsetInterval()
— Вызывает функцию или вычисляет выражение через заданные интервалы времени.setTimeout()
— Вызывает функцию или оценивает выражение после указанного интервалаstop()
— Останавливает загрузку окна
Свойства экрана
availHeight
— Возвращает высоту экрана (исключая панель задач Windows)availWidth
— Возвращает ширину экрана (исключая панель задач Windows)colorDepth
— Возвращает разрядность цветовой палитры для отображения изображенийheight
— Общая высота экранаpixelDepth
— Цветовое разрешение экрана в битах на пиксельwidth
— Общая ширина экрана
События JavaScript
События — это то, что может произойти с элементами HTML и выполняется пользователем. Язык программирования может прослушивать эти события и запускать действия в коде. Без них не обходится ни одна шпаргалка по JavaScript.
Мышь (mouse)
onclick
— Событие происходит, когда пользователь нажимает на элементoncontextmenu
— Пользователь щелкает правой кнопкой мыши элемент, чтобы открыть контекстное меню.ondblclick
— Пользователь дважды щелкает элементonmousedown
— Пользователь нажимает кнопку мыши над элементомonmouseenter
— Указатель перемещается на элементonmouseleave
— Указатель перемещается за пределы элементаonmousemove
— Указатель движется, пока он находится над элементомonmouseover
— Когда указатель перемещается на элемент или один из его дочерних элементовonmouseout
— Пользователь перемещает указатель мыши за пределы элемента или одного из его дочерних элементов.onmouseup
— Пользователь отпускает кнопку мыши над элементом
Клавиатура (keyboard)
onkeydown
— Когда пользователь нажимает клавишу внизonkeypress
— Момент, когда пользователь начинает нажимать клавишуonkeyup
— Пользователь отпускает клавишу
Рамка (frame)
onabort
— Загрузка носителя прерванаonbeforeunload
— Событие происходит перед выгрузкой документаonerror
— Ошибка при загрузке внешнего файлаonhashchange
— Произошли изменения в якорной части URL.onload
— Когда объект загрузилсяonpagehide
— Пользователь уходит с веб-страницыonpageshow
— Когда пользователь переходит на веб-страницуonresize
— Вид документа изменен.onscroll
— Полоса прокрутки элемента прокручиваетсяonunload
— Событие происходит, когда страница выгрузилась
Форма (form)
onblur
— Когда элемент теряет фокусonchange
— Содержимое элемента формы меняется (для<input>
,<select>
и<textarea>
)onfocus
— Элемент получает фокусonfocusin
— Когда элемент вот-вот получит фокусonfocusout
— Элемент вот-вот потеряет фокусoninput
— Пользовательский ввод на элементеoninvalid
— Элемент недействителенonreset
— Форма сброшенаonsearch
— Пользователь что-то пишет в поле поиска (для<input="search">
)onselect
— Пользователь выделяет некоторый текст (для<input>
и<textarea>
)onsubmit
— Форма отправлена
Перетаскивание (drag)
ondrag
— Элемент перетаскиваетсяondragend
— Пользователь закончил перетаскивание элементаondragenter
— Перетаскиваемый элемент попадает в цель перетаскиванияondragleave
— Перетаскиваемый элемент покидает цель перетаскиванияondragover
— Перетаскиваемый элемент находится поверх цели перетаскиванияondragstart
— Пользователь начинает перетаскивать элементondrop
— Перетащенный элемент перетаскивается на цель перетаскивания
Буфер обмена (clipboard)
oncopy
— Пользователь копирует содержимое элементаoncut
— Пользователь вырезает содержимое элементаonpaste
— Пользователь вставляет содержимое в элемент
Медиа (media)
onabort
— Загрузка носителя прерванаoncanplay
— Браузер может начать воспроизведение мультимедиа (например, файл достаточно буферизован)oncanplaythrough
— Браузер может воспроизводить мультимедиа без остановкиondurationchange
— Продолжительность смены носителяonended
— СМИ подошли к концуonerror
— Возникает при возникновении ошибки при загрузке внешнего файлаonloadeddata
— Медиаданные загружаютсяonloadedmetadata
— Метаданные (такие как размеры и продолжительность) загружаютсяonloadstart
— Браузер начинает искать указанный носительonpause
— Медиа приостанавливается либо пользователем, либо автоматическиonplay
— Медиа было запущено или больше не приостановленоonplaying
— Воспроизведение мультимедиа после приостановки или остановки для буферизацииonprogress
— Браузер находится в процессе загрузки мультимедиаonratechange
— Скорость воспроизведения носителя меняетсяonseeked
— Пользователь закончил перемещение/переход на новую позицию в медиаonseeking
— Пользователь начинает двигаться/пропускатьonstalled
— Браузер пытается загрузить медиафайл, но он недоступенonsuspend
— Браузер намеренно не загружает медиаontimeupdate
— Изменилась игровая позиция (например, из-за быстрой перемотки вперед)onvolumechange
— Изменена громкость мультимедиа (включая отключение звука)onwaiting
— Мультимедиа приостановлено, но ожидается возобновление (например, буферизация)
Анимация (animation)
animationend
— Анимация CSS завершенаanimationiteration
— CSS анимация повторяетсяanimationstart
— Началась CSS анимация
Другой (other)
transitionend
— Запускается после завершения перехода CSSonmessage
— Сообщение получено через источник событияonoffline
— Браузер начинает работать в автономном режимеononline
— Браузер начинает работать онлайнonpopstate
— При изменении истории окнаonshow
—<menu>
Элемент отображается в виде контекстного менюonstorage
— Обновлена область веб-хранилищаontoggle
— Пользователь открывает или закрывает<details>
элементonwheel
— Колесико мыши перемещается вверх или вниз по элементуontouchcancel
— Экран-касание прерываетсяontouchend
— Палец пользователя убран с сенсорного экранаontouchmove
— Палец скользит по экрануontouchstart
— Палец помещается на сенсорный экран
Ошибки
При работе с JavaScript могут возникать разные ошибки. Есть несколько способов справиться с ними:
try
— Позволяет определить блок кода для проверки на наличие ошибокcatch
— Настройте блок кода для выполнения в случае ошибкиthrow
— Создавайте собственные сообщения об ошибках вместо стандартных ошибок JavaScript.finally
— Позволяет выполнять код после попытки и перехвата, независимо от результата
Значения имени ошибки
JavaScript также имеет встроенный объект ошибки. Он имеет два свойства:
name
— Задает или возвращает имя ошибкиmessage
— Устанавливает или возвращает сообщение об ошибке в виде строки
Свойство error может возвращать шесть различных значений в качестве своего имени:
EvalError
— Произошла ошибка вeval()
функцииRangeError
— Номер находится «вне диапазона»ReferenceError
— Произошла недопустимая ссылкаSyntaxError
— Произошла синтаксическая ошибкаTypeError
— Произошла ошибка типаURIError
— ПроизошлаencodeURI()
ошибка