JavaScript Tutorial

Добро пожаловать на сайт JavaScriptTutorial! Этот учебник по JavaScript поможет вам быстро и эффективно освоить язык программирования JavaScript с нуля.

JavaScript Tutorial

Если вы оказались в одной из следующих ситуаций:

  • Не знаете, с чего начать изучение JavaScript.
  • Надоело просто копировать и вставлять код JavaScript, не понимая толком, как он работает.
  • Чувствуете, что не можете добавить более богатые и привлекательные функции на свои веб-сайты и веб-приложения, потому что не знаете, как извлечь максимальную пользу из JavaScript.

JavaScriptTutorial — хорошее место для начала.

Раздел 1. Начало работы

Раздел 2. Основы

  • Синтаксис — объяснение синтаксиса JavaScript, включая пробелы, операторы, идентификаторы, ключевые слова, выражения и комментарии.
  • Переменные — узнайте, как объявлять переменные.
  • Типы данных — включая примитивные и ссылочные типы.
  • Число — рассмотрите, как JavaScript использует тип Number для представления целых чисел и чисел с плавающей запятой.
  • Разделитель чисел — как сделать числа более читабельными, используя подчеркивание в качестве разделителя чисел.
  • Восьмеричные и двоичные литералы — обеспечивают поддержку двоичных литералов и изменяют способ представления восьмеричных литералов.
  • Boolean – введение в логический тип данных Boolean.
  • Строка – примитивный тип 'string' и некоторые основные строковые операции.
  • Объект – тип 'object' и манипуляции с ним.
  • Примитивные и ссылочные значения — изучите два типа значений в JavaScript, включая примитивные и ссылочные значения, а также различия между ними.
  • Массив — тип 'Array' и способы манипулирования его элементами.

Раздел 3. Операторы

  • Арифметические операторы — познакомьтесь с арифметическими операторами, включая сложение ( + ), вычитание ( - ), умножение ( * ) и деление ( / ).
  • Оператор остатка — рассмотрите, как использовать оператор остатка ( % ), чтобы получить остаток от деления одного значения на другое значение.
  • Операторы присваивания — изучите, как использовать операторы присваивания ( = ) для присвоения значения или выражения переменной.
  • Унарные операторы — узнайте, как использовать унарные операторы.
  • Операторы сравнения — изучите, как использовать операторы сравнения для сравнения двух значений.
  • Логические операторы — научитесь использовать логические операторы: НЕ ( ! ), И ( && ) и ИЛИ ( || ).

Раздел 4. Операторы управления потоком

  • if — покажем, как использовать оператор if для выполнения блока, если условие истинно.
  • if…else — научитесь выполнять блок кода на основе заданного условия.
  • if…else…if — проверка нескольких условий и выполнение блока.
  • Тернарные операторы — сокращение для оператора if - (?:).
  • switch — замена нескольких операторов if при сравнении значения с несколькими вариантами с помощью оператора switch.
  • while — узнайте, как выполнить цикл предварительного тестирования, который многократно выполняет блок кода до тех пор, пока заданное условие остается истинным.
  • do…while — как реализовать post-test цикл, который многократно выполняет блок кода до тех пор, пока указанное условие не станет ложным.
  • for loop — научитесь многократно выполнять блок кода на основе различных параметров.
  • break — узнайте, как преждевременно завершить цикл.
  • continue — как пропустить текущую итерацию цикла и перейти к следующей.
  • Оператор запятая — рассмотрите, как использовать оператор запятой в цикле for для одновременного обновления нескольких переменных.

Раздел 5. Функции

Раздел 6. Объекты и прототипы

Раздел 7. Классы

  • Класс — познакомьтесь с синтаксисом классов ES6 и тем, как объявить класс.
  • Getters and Setters — определите геттеры и сеттеры для класса с помощью ключевых слов get и set.
  • Выражение класса — изучите альтернативный способ определения нового класса с помощью выражения класса.
  • Вычисляемое свойство — рассмотрите вычисляемое свойство и его практическое применение.
  • Наследование — как расширить класс с помощью ключевых слов extendsи super.
  • new.target — познакомит вас с метасвойством new.target.
  • Статические методы — объясняют, как определять методы, связанные с классом, а не экземпляры этого класса.
  • Статические свойства — рассмотрите, как определить статические свойства, общие для всех экземпляров класса.
  • Частные поля — узнайте, как определять частные поля в классе.
  • Частные методы — изучите, как определять частные методы в классе.

Раздел 8. Продвинутые функции

Раздел 9. Promises & Async/Await

  • Promises — узнайте о Javascript Promises (промисы), что они собой представляют и как их эффективно использовать.
  • Цепочка промисов — покажет вам, как выполнить несколько асинхронных операций последовательно.
  • Структура промисов — Promise.all() и Promise.race() – узнайте, как составить новый промис из нескольких промисов.
  • Promise.any() — узнайте, как использовать метод JavaScript Promise.any() для возврата первого выполненного Promise.
  • Promise.allSettled() — принимает список промисов и возвращает новый промис, который разрешается в массив значений, которые были разрешены (либо разрешены, либо отклонены) входными промисами.
  • Promise.prototype.finally() — выполняет фрагмент кода после выполнения промиса, независимо от его результата.
  • Promise error handling — узнайте, как обрабатывать ошибки в промисах.
  • async / await — написание асинхронного кода с более понятным синтаксисом.
  • Promise.withResolvers() — возвращает новый промис с функциями разрешения и отклонения.

Раздел 10. Iterators & Generators

  • Iterators — познакомьтесь с протоколами итерации и итератора.
  • Generators — разработайте функции, которые могут останавливаться на полпути, а затем возобновлять работу с того места, где они остановились.
  • yield — узнайте больше о том, как использовать ключевое слово yield в генераторах.
  • for…of — узнайте, как использовать цикл for...of для перебора элементов итерируемого объекта.
  • Asynchronous iterators — узнайте, как использовать асинхронные итераторы для последовательного доступа к асинхронным источникам данных.
  • Async generators — создание асинхронного генератора.

Раздел 11. Модули

  • Модули — научитесь писать модульный код JavaScript.
  • Экспорт — рассмотрите, как экспортировать переменные, функции и классы из модуля.
  • Импорт — изучите как импортировать экспорты по умолчанию и именованные экспорты из другого модуля.
  • Динамический импорт — рассмотрите как динамически импортировать модуль с помощью функционального объекта import().
  • Ожидание (await) на высшем уровне — модуль await верхнего уровня и варианты его использования.

Раздел 12. Symbol

  • Symbol — познакомьтесь с новым примитивным типом, называемым символом в ES6.

Раздел 13. Коллекции

  • Map — познакомьтесь с типом Map, который содержит коллекцию пар ключ-значение.
  • Set — узнайте, как использовать тип Set, содержащий коллекцию уникальных значений.

Раздел 14. Обработка ошибок

  • try…catch — покажет вам, как правильно обрабатывать исключения.
  • try…catch…finally — узнайте, как перехватывать исключения и выполнять блок независимо от того, возникают исключения или нет.
  • throw — рассмотрите, как вызвать исключение.
  • Optional catch binding — пропустите переменную исключения в блоке catch.

Раздел 15. JavaScript var, let, и const

  • let — объявляйте переменные блочной области действия с помощью ключевого слова let.
  • let vs. var — разница между let и var.
  • const — определите константы с помощью ключевого слова const.

Раздел 16. Proxy и Reflection

  • Proxy — научитесь использовать прокси-объект, который оборачивает другой объект (целевой) и перехватывает основные операции целевого объекта.
  • Reflection — рассмотрите, как использовать ES6 Reflection API для управления переменными, свойствами и методами объектов во время выполнения.

Раздел 17. Среда выполнения JavaScript

  • Контексты выполнения — понимание контекстов выполнения, включая глобальные и функциональные контексты выполнения.
  • Call Stack — изучите стек вызовов.
  • Event Loop — покажет, как JavaScript обрабатывает асинхронные операции с помощью цикла событий.
  • Hoisting — узнайте, как работает подъем в JavaScript.
  • Область видимости переменных — рассмотрите области видимости переменных

Раздел 18. Примитивные типы-обёртки

  • Примитивные типы-обёртки — узнайте, как работают примитивные типы-обёртки в JavaScript.
  • Boolean — познакомьтесь с примитивным типом Boolean.
  • Number — узнайте о примитивном типе Number.
  • BigInt — введение BigInt, представляющего большие целые числа.
  • String — познакомит вас с типом String.

Раздел 19. Продвинутые операторы