Сделайте свое путешествие по JavaScript проще с помощью этой памятки
Если кто-нибудь спросит меня, какой язык программирования наиболее известен среди веб-разработчиков во всем мире, я отвечу: JavaScript. JavaScript, часто сокращенно JS, является наиболее широко используемым языком программирования для веб-разработки. Сегодня я пытаюсь облегчить ваше путешествие по JavaScript с помощью шпаргалки.
Итак, давайте проверим шпаргалку.
Основы JavaScript
- Включение JavaScript в HTML-страницу
<script type="text/javascript"> //JS code goes here </script>
- Вызов внешнего файла JavaScript
<script src="myscript.js"></script><code></code>
- Включая комментарии
//Single line comments /* comment here for Multi-line comments */
Переменные (var, const, let)
- 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"}
- Объекты (человек)
var person = { firstName:"John", lastName:"Doe", age:20, nationality:"German" };
Массивы
var fruit = ["Banana", "Apple", "Pear"];
Методы массива
- Объединение нескольких массивов в один
concat()
- Возвращает первую позицию, в которой данный элемент появляется в массиве
indexOf()
- Объединить элементы массива в одну строку и вернуть строку
join()
- Дает последнюю позицию, в которой данный элемент появляется в массиве
lastIndexOf()
- Удаляет последний элемент массива
pop()
- Добавить новый элемент в конце
push()
- Обратный порядок элементов в массиве
reverse()
- Удалить первый элемент массива
shift()
- Вытягивает копию части массива в новый массив
slice()
- Преобразует элементы в строки
toString()
- Добавляет новый элемент в начало
unshift()
- Возвращает примитивное значение указанного объекта
valueOf()
Операторы
- Основные операторы
+ Addition - Subtraction *. Multiplication /. Division (..) Grouping operator % Modulus (remainder) ++ Increment numbers -- Decrement numbers
- Операторы сравнения
== Equal to === Equal value and equal type != Not equal !== Not equal value or not equal type > Greater than < Less than >= Greater than or equal to <= Less than or equal to ? Ternary operator
- Логические операторы
&& Logical and || Logical or ! Logical not
- Побитовые операторы
& AND statement | OR statement ~. NOT ^ XOR << Left shift >> Right shift >>> Zero fill right shift
Функции
function name(parameter1, parameter2, parameter3) { // what the function does }
Вывод данных
- Вывод данных в окно оповещения в окне браузера
alert()
- Открывает диалоговое окно да/нет и возвращает true/false в зависимости от клика пользователя
confirm()
- Записывает информацию в консоль браузера, подходит для целей отладки.
console.log()
- Пишите прямо в HTML-документ
document.write()
- Создает диалог для пользовательского ввода
prompt()
Глобальные функции
- Декодирует универсальный идентификатор ресурса (URI), созданный с помощью encodeURI или аналогичного
decodeURI()
- Декодирует компонент URI
decodeURIComponent()
- Кодирует URI в UTF-8
encodeURI()
- То же, но для компонентов URI
encodeURIComponent()
- Оценивает код JavaScript, представленный в виде строки
eval()
- Определяет, является ли переданное значение конечным числом
isFinite()
- Определяет, является ли значение NaN или нет
isNaN()
- Возвращает число, преобразованное из его аргумента
Number()
- Разбирает аргумент и возвращает число с плавающей запятой
parseFloat()
- Разбирает свой аргумент и возвращает целое число
parseInt()
Циклы
for (before loop; condition for loop; execute after loop) { // what to do during the loop }
- Самый распространенный способ создания цикла в Javascript
for
- Устанавливает условия, при которых выполняется цикл
while
- Однако, подобно циклу while, он выполняется хотя бы один раз и в конце выполняет проверку, чтобы увидеть, выполняется ли условие для повторного выполнения.
do while
- Используется для остановки и выхода из цикла при определенных условиях.
break
- Пропускать части цикла, если выполняются определенные условия
continue
Инструкции If — Else
if (condition) { // what to do if condition is met } else { // what to do if condition is not met }
Строки
var person = "John Doe";
Экран-символы
\' — Single quote \" — Double quote \\ — Backslash \b — Backspace \f — Form feed \n — New line \r — Carriage return \t — Horizontal tabulator \v — Vertical tabulator
Строковые методы
- Возвращает символ в указанной позиции внутри строки
charAt()
- Дает вам юникод символа в этой позиции
charCodeAt()
- Объединяет (объединяет) две или более строк в одну
concat()
- Возвращает строку, созданную из указанной последовательности кодовых единиц UTF-16.
fromCharCode()
- Предоставляет позицию первого вхождения указанного текста в строке
indexOf()
- То же, что и indexOf(), но с последним вхождением, поиск в обратном направлении
lastIndexOf()
- Извлекает совпадения строки с шаблоном поиска
match()
- Найти и заменить определенный текст в строке
replace()
- Выполняет поиск соответствующего текста и возвращает его позицию
search()
- Извлекает раздел строки и возвращает его как новую строку
slice()
- Разбивает строковый объект на массив строк в указанной позиции
split()
- Аналогичен slice(), но извлекает подстроку в зависимости от указанного количества символов.
substr()
- Также похож на slice(), но не может принимать отрицательные индексы.
substring()
- Преобразование строк в нижний регистр
toLowerCase()
- Преобразование строк в верхний регистр
toUpperCase()
- Возвращает примитивное значение (не имеющее свойств или методов) строкового объекта.
valueOf()
Регулярные выражения
- Модификаторы узоров
e — Evaluate replacement i — Perform case-insensitive matching g — Perform global matching m — Perform multiple line matching s — Treat strings as single line x — Allow comments and whitespace in pattern U — Non Greedy pattern
- Кронштейны
[abc] Find any of the characters between the brackets [^abc] Find any character not in the brackets [0-9] Used to find any digit from 0 to 9 [A-z] Find any character from uppercase A to lowercase z (a|b|c) Find any of the alternatives separated with |
- Метасимволы
. — Find a single character, except newline or line terminator \w — Word character \W — Non-word character \d — A digit \D — A non-digit character \s — Whitespace character \S — Non-whitespace character \b — Find a match at the beginning/end of a word \B — A match not at the beginning/end of a word \0 — NUL character \n — A new line character \f — Form feed character \r — Carriage return character \t — Tab character \v — Vertical tab character \xxx — The character specified by an octal number xxx \xdd — Character specified by a hexadecimal number dd \uxxxx — The Unicode character specified by a hexadecimal number xxxx
- квантификаторы
n+ — Matches any string that contains at least one n n* — Any string that contains zero or more occurrences of n n? — A string that contains zero or one occurrences of n n{X} — String that contains a sequence of X n’s n{X,Y} — Strings that contains a sequence of X to Y n’s n{X,} — Matches any string that contains a sequence of at least X n’s n$ — Any string with n at the end of it ^n — String with n at the beginning of it ?=n — Any string that is followed by a specific string n ?!n — String that is not followed by a specific string n
Числа и математика
Свойства числа
- Максимальное числовое значение, которое может быть представлено в JavaScript
MAX_VALUE
- Наименьшее положительное числовое значение, которое можно представить в JavaScript
MIN_VALUE
- Значение «не число»
NaN
- Отрицательное значение бесконечности
NEGATIVE_INFINITY
- Положительное значение бесконечности
POSITIVE_INFINITY
Числовые методы
- Возвращает строку с округленным числом, записанным в экспоненциальной записи.
toExponential()
- Возвращает строку числа с указанным количеством десятичных знаков
toFixed()
- Строка числа, записанная с указанной длиной
toPrecision()
- Возвращает число в виде строки
toString()
- Возвращает число как число
valueOf()
Математические свойства
E Euler’s number LN2 The natural logarithm of 2 LN10 Natural logarithm of 10 LOG2E Base 2 logarithm of E LOG10E Base 10 logarithm of E PI The number PI SQRT1_2 Square root of 1/2 SQRT2 The square root of 2
Математические методы
- Возвращает абсолютное (положительное) значение x
abs(x)
- Арккосинус x, в радианах
acos(x)
- Арксинус x, в радианах
asin(x)
- Арктангенс x как числовое значение
atan(x)
- Арктангенс частного его аргументов
atan2(y,x)
- Значение x округлено до ближайшего целого числа
ceil(x)
- Косинус x (x в радианах)
cos(x)
- Значение Ex
exp(x)
- Значение x, округленное в меньшую сторону до ближайшего целого числа
floor(x)
- Натуральный логарифм (по основанию E) числа x
log(x)
- Возвращает число с наибольшим значением
max(x,y,z,...,n)
- То же самое для числа с наименьшим значением
min(x,y,z,...,n)
- X в степени y
pow(x,y)
- Возвращает случайное число от 0 до 1
random()
- Значение x, округленное до ближайшего целого числа
round(x)
- Синус x (x в радианах)
sin(x)
- Квадратный корень из х
sqrt(x)
- Тангенс угла
tan(x)
Работа с датами
Установка дат
- Создает новый объект даты с текущей датой и временем
Date()
- Создайте пользовательский объект даты. Цифры представляют год, месяц, день, час, минуты, секунды и миллисекунды. Вы можете опустить все, что хотите, кроме года и месяца.
Date(2017, 5, 21, 3, 23, 10, 0)
- Объявление даты в виде строки
Date("2017-06-23")
Извлечение значений даты и времени
- Получить день месяца в виде числа (1–31)
getDate()
- День недели в виде числа (0–6)
getDay()
- Год в виде четырехзначного числа (гггг)
getFullYear()
- Получить час (0–23)
getHours()
- Миллисекунда (0–999)
getMilliseconds()
- Получить минуты (0–59)
getMinutes()
- Месяц в виде числа (0–11)
getMonth()
- Получить второй (0–59)
getSeconds()
- Получить миллисекунды с 1 января 1970 года
getTime()
- День (число) месяца в указанную дату по всемирному времени (также доступно для дня, месяца, полного года, часов, минут и т. д.)
getUTCDate()
- Анализирует строковое представление даты и возвращает количество миллисекунд с 1 января 1970 г.
parse
Установить часть даты
- Установите день в виде числа (1–31)
setDate()
- Устанавливает год (необязательно месяц и день)
setFullYear()
- Установите час (0–23)
setHours()
- Установить миллисекунды (0–999)
setMilliseconds()
- Устанавливает минуты (0–59)
setMinutes()
- Установите месяц (0–11)
setMonth()
- Устанавливает секунды (0–59)
setSeconds()
- Установите время (в миллисекундах с 1 января 1970 г.)
setTime()
- Устанавливает день месяца для указанной даты в соответствии с универсальным временем (также доступно для дня, месяца, полного года, часов, минут и т. д.)
setUTCDate()
DOM-узел
Свойства узла
- Возвращает динамическую коллекцию всех атрибутов, зарегистрированных для элемента.
attributes
- Предоставляет абсолютный базовый URL-адрес HTML-элемента.
baseURI
- Дает коллекцию дочерних узлов элемента
childNodes
- Возвращает первый дочерний узел элемента
firstChild
- Последний дочерний узел элемента
lastChild
- Дает вам следующий узел на том же уровне дерева узлов
nextSibling
- Возвращает имя узла
nodeName
- Возвращает тип узла
nodeType
- Задает или возвращает значение узла
nodeValue
- Объект документа верхнего уровня для этого узла
ownerDocument
- Возвращает родительский узел элемента
parentNode
- Возвращает узел, непосредственно предшествующий текущему
previousSibling
- Задает или возвращает текстовое содержимое узла и его потомков
textContent
Методы узла
- Добавляет новый дочерний узел к элементу как последний дочерний узел
appendChild()
- Клонирует элемент HTML
cloneNode()
- Сравнивает позицию документа двух элементов
compareDocumentPosition()
- Возвращает объект, который реализует API указанной функции.
getFeature()
- Возвращает true, если элемент имеет какие-либо атрибуты, иначе false
hasAttributes()
- Возвращает true, если у элемента есть дочерние узлы, иначе false
hasChildNodes()
- Вставляет новый дочерний узел перед указанным существующим дочерним узлом
insertBefore()
- Возвращает true, если указанный namespaceURI является значением по умолчанию, иначе false
isDefaultNamespace()
- Проверяет, равны ли два элемента
isEqualNode()
- Проверяет, являются ли два элемента одним и тем же узлом
isSameNode()
- Возвращает true, если указанная функция поддерживается элементом
isSupported()
- Возвращает namespaceURI, связанный с данным узлом
lookupNamespaceURI()
- Возвращает DOMString, содержащую префикс для данного namespaceURI, если он присутствует.
lookupPrefix()
- Соединяет соседние текстовые узлы и удаляет пустые текстовые узлы в элементе
normalize()
- Удаляет дочерний узел из элемента
removeChild()
- Заменяет дочерний узел в элементе
replaceChild()
Методы элемента
- Возвращает указанное значение атрибута узла элемента
getAttribute()
- Возвращает строковое значение атрибута с указанным пространством имен и именем
getAttributeNS()
- Получает указанный узел атрибута
getAttributeNode()
- Возвращает узел атрибута для атрибута с заданным пространством имен и именем.
getAttributeNodeNS()
- Предоставляет коллекцию всех дочерних элементов с указанным именем тега.
getElementsByTagName()
- Возвращает живую HTMLCollection элементов с определенным именем тега, принадлежащим данному пространству имен.
getElementsByTagNameNS()
- Возвращает true, если элемент имеет какие-либо атрибуты, иначе false
hasAttribute()
- Предоставляет значение true/false, указывающее, имеет ли текущий элемент в заданном пространстве имен указанный атрибут.
hasAttributeNS()
- Удаляет указанный атрибут из элемента
removeAttribute()
- Удаляет указанный атрибут из элемента в пределах определенного пространства имен
removeAttributeNS()
- Забирает указанный узел атрибута и возвращает удаленный узел
removeAttributeNode()
- Устанавливает или изменяет указанный атрибут на указанное значение
setAttribute()
- Добавляет новый атрибут или изменяет значение атрибута с заданным пространством имен и именем.
setAttributeNS()
- Задает или изменяет указанный узел атрибута
setAttributeNode()
- Добавляет к элементу новый узел атрибута с пространством имен.
setAttributeNodeNS()
Работа с браузером
Свойства окна
- Проверяет, было ли окно закрыто или нет, и возвращает true или false
closed
- Задает или возвращает текст по умолчанию в строке состояния окна.
defaultStatus
- Возвращает объект документа для окна
document
- Возвращает все элементы ‹iframe› в текущем окне
frames
- Предоставляет объект History для окна
history
- Внутренняя высота области содержимого окна
innerHeight
- Внутренняя ширина области содержимого
innerWidth
- Узнать количество элементов ‹iframe› в окне
length
- Возвращает объект местоположения для окна
location
- Задает или возвращает имя окна
name
- Возвращает объект Navigator для окна
navigator
- Возвращает ссылку на окно, создавшее окно
opener
- Внешняя высота окна, включая панели инструментов/полосы прокрутки.
outerHeight
- Внешняя ширина окна, включая панели инструментов/полосы прокрутки.
outerWidth
- Количество пикселей, на которое текущий документ был прокручен по горизонтали
pageXOffset
- Количество пикселей, на которое документ был прокручен по вертикали
pageYOffset
- Родительское окно текущего окна
parent
- Возвращает объект Screen для окна
screen
- Горизонтальная координата окна (относительно экрана)
screenLeft
- Вертикальная координата окна
screenTop
- То же, что и screenLeft, но требуется для некоторых браузеров.
screenX
- То же, что и screenTop, но требуется для некоторых браузеров.
screenY
- Возвращает текущее окно
self
- Задает или возвращает текст в строке состояния окна
status
- Возвращает самое верхнее окно браузера
top
Методы окна
- Отображает окно предупреждения с сообщением и кнопкой OK
alert()
- Убирает фокус с текущего окна
blur()
- Очищает таймер, установленный с помощью setInterval()
clearInterval()
- Очищает таймер, установленный с помощью setTimeout()
clearTimeout()
- Закрывает текущее окно
close()
- Отображает диалоговое окно с сообщением и кнопками «ОК» и «Отмена».
confirm()
- Устанавливает фокус на текущее окно
focus()
- Перемещает окно относительно его текущей позиции
moveBy()
- Перемещает окно в указанную позицию
moveTo()
- Открывает новое окно браузера
open()
- Печатает содержимое текущего окна
print()
- Отображает диалоговое окно, предлагающее посетителю ввести данные
prompt()
- Изменяет размер окна на указанное количество пикселей
resizeBy()
- Изменяет размер окна до указанной ширины и высоты
resizeTo()
- Прокручивает документ на указанное количество пикселей
scrollBy()
- Прокручивает документ до определенных координат
scrollTo()
- Вызывает функцию или оценивает выражение через указанные интервалы
setInterval()
- Вызывает функцию или оценивает выражение после указанного интервала
setTimeout()
- Останавливает загрузку окна
stop()
Свойства экрана
- Возвращает высоту экрана (исключая панель задач Windows)
availHeight
- Возвращает ширину экрана (исключая панель задач Windows)
availWidth
- Возвращает разрядность цветовой палитры для отображения изображений
colorDepth
- Общая высота экрана
height
- Цветовое разрешение экрана в битах на пиксель
pixelDepth
- Общая ширина экрана
width
События
Мышь
- Событие происходит, когда пользователь нажимает на элемент
onclick
- Пользователь щелкает правой кнопкой мыши элемент, чтобы открыть контекстное меню.
oncontextmenu
- Пользователь дважды щелкает элемент
ondblclick
- Пользователь нажимает кнопку мыши над элементом
onmousedown
- Указатель перемещается на элемент
onmouseenter
- Указатель выходит из элемента
onmouseleave
- Указатель движется, пока он находится над элементом
onmousemove
- Когда указатель перемещается на элемент или один из его дочерних элементов
onmouseover
- Пользователь перемещает указатель мыши за пределы элемента или одного из его дочерних элементов.
onmouseout
- Пользователь отпускает кнопку мыши над элементом
onmouseup
Клавиатура
- Когда пользователь нажимает клавишу
onkeydown
- Момент, когда пользователь начинает нажимать клавишу
onkeypress
- Пользователь отпускает ключ
onkeyup
Фрейм
- Загрузка носителя прервана
onabort
- Событие происходит перед выгрузкой документа
onbeforeunload
- Ошибка при загрузке внешнего файла
onerror
- Были внесены изменения в якорную часть URL.
onhashchange
- Когда объект загружен
onload
- Пользователь уходит с веб-страницы
onpagehide
- Когда пользователь переходит на веб-страницу
onpageshow
- Вид документа изменен
onresize
- Полоса прокрутки элемента прокручивается
onscroll
- Событие происходит, когда страница выгружается
onunload
Форма
- Когда элемент теряет фокус
onblur
- Содержимое элемента формы изменяется (для ‹input›, ‹select›и ‹textarea›)
onchange
- Элемент получает фокус
onfocus
- Когда элемент вот-вот получит фокус
onfocusin
- Элемент вот-вот потеряет фокус
onfocusout
- Пользовательский ввод на элементе
oninput
- Элемент недействителен
oninvalid
- Форма сброшена
onreset
- Пользователь что-то пишет в поле поиска (для ‹input="search"›)
onsearch
- Пользователь выбирает текст (для ‹ввода› и ‹текстовой области›)
onselect
- Форма отправлена
onsubmit
Перетащите
- Элемент перетаскивается
ondrag
- Пользователь закончил перетаскивание элемента
ondragend
- Перетаскиваемый элемент попадает в цель перетаскивания
ondragenter
- Перетаскиваемый элемент покидает цель перетаскивания
ondragleave
- Перетаскиваемый элемент находится поверх цели перетаскивания
ondragover
- Пользователь начинает перетаскивать элемент
ondragstart
- Перетащенный элемент перетаскивается на цель перетаскивания
ondrop
Буфер обмена
- Пользователь копирует содержимое элемента
oncopy
- Пользователь вырезает содержимое элемента
oncut
- Пользователь вставляет содержимое в элемент
onpaste
Медиа
- Загрузка носителя прервана
onabort
- Браузер может начать воспроизведение мультимедиа (например, файл достаточно буферизован)
oncanplay
- Когда браузер может воспроизводить мультимедиа без остановки
oncanplaythrough
- Продолжительность смены СМИ
ondurationchange
- СМИ подошли к концу
onended
- Возникает при возникновении ошибки при загрузке внешнего файла
onerror
- Медиаданные загружаются
onloadeddata
- Метаданные (например, размеры и продолжительность) загружаются
onloadedmetadata
- Браузер начинает искать указанный носитель
onloadstart
- Медиа приостанавливается либо пользователем, либо автоматически
onpause
- Мультимедиа было запущено или больше не приостановлено
onplay
- Воспроизведение мультимедиа после приостановки или остановки для буферизации
onplaying
- Браузер находится в процессе загрузки мультимедиа
onprogress
- Скорость воспроизведения носителя меняется
onratechange
- Пользователь закончил перемещение/переход на новую позицию в медиа
onseeked
- Пользователь начинает двигаться/пропускать
onseeking
- Браузер пытается загрузить медиафайл, но он недоступен
onstalled
- Браузер намеренно не загружает медиа
onsuspend
- Игровая позиция изменилась (например, из-за быстрой перемотки вперед)
ontimeupdate
- Громкость мультимедиа изменилась (включая отключение звука)
onvolumechange
- Мультимедиа приостановлено, но ожидается возобновление (например, буферизация)
onwaiting
Анимация
- Анимация CSS завершена
animationend
- CSS-анимация повторяется
animationiteration
- CSS-анимация началась
animationstart
Другое
- Запускается после завершения перехода CSS
transitionend
- Сообщение получено через источник события
onmessage
- Браузер начинает работать в автономном режиме
onoffline
- Браузер начинает работать онлайн
onpopstate
- Элемент ‹menu› отображается как контекстное меню
onshow
- Область веб-хранилища обновлена
onstorage
- Пользователь открывает или закрывает элемент ‹details›
ontoggle
- Колесико мыши перемещается вверх или вниз по элементу
onwheel
- Касание экрана прерывается
ontouchcancel
- Палец пользователя удален с сенсорного экрана
ontouchend
- Палец скользит по экрану
ontouchmove
- Палец находится на сенсорном экране
ontouchstart
Ошибки
- Позволяет определить блок кода для проверки на наличие ошибок
try
- Настройте блок кода для выполнения в случае ошибки
catch
- Создавайте собственные сообщения об ошибках вместо стандартных ошибок JavaScript.
throw
- Позволяет выполнять код после попытки и перехвата, независимо от результата
finally
Значения названий ошибок
- Задает или возвращает имя ошибки
name
- Задает или возвращает сообщение об ошибке в строке из
message
- Произошла ошибка в функции eval()
EvalError
- Номер находится «вне диапазона»
RangeError
- Произошла недопустимая ссылка
ReferenceError
- Произошла синтаксическая ошибка
SyntaxError
- Произошла ошибка типа
TypeError
- Произошла ошибка encodeURI()
URIError
Я пытался скрыть большую часть вещей. Надеюсь, эта шпаргалка поможет вам с JavaScript.
Ваше здоровье!
Вот еще несколько статей. Надеюсь, вы также найдете их полезными.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Посетите наш Community Discord и присоединитесь к нашему Коллективу талантов.