Руководство по javascript на русском

Время на прочтение
8 мин

Количество просмотров 273K

Недавно мы провели опрос, посвящённый целесообразности перевода этого руководства по JavaScript. Как оказалось, около 90% проголосовавших отнеслись к данной идее положительно. Поэтому сегодня публикуем первую часть перевода.

Это руководство, по замыслу автора, рассчитано на тех, кто уже немного знаком JavaScript и хочет привести свои знания в порядок а также узнать о языке что-то новое. Мы решили немного расширить аудиторию этого материала, включить в неё тех, кто совершенно ничего не знает о JS, и начать его с написания нескольких вариантов «Hello, world!».

→ Часть 1: первая программа, особенности языка, стандарты
→ Часть 2: стиль кода и структура программ
→ Часть 3: переменные, типы данных, выражения, объекты
→ Часть 4: функции
→ Часть 5: массивы и циклы
→ Часть 6: исключения, точка с запятой, шаблонные литералы
→ Часть 7: строгий режим, ключевое слово this, события, модули, математические вычисления
→ Часть 8: обзор возможностей стандарта ES6
→ Часть 9: обзор возможностей стандартов ES7, ES8 и ES9

Hello, world!

Программа, которую по традиции называют «Hello, world!», очень проста. Она выводит куда-либо фразу «Hello, world!», или другую подобную, средствами некоего языка.

JavaScript — это язык, программы на котором можно выполнять в разных средах. В нашем случае речь идёт о браузерах и о серверной платформе Node.js. Если до сих пор вы не написали ни строчки кода на JS и читаете этот текст в браузере, на настольном компьютере, это значит, что вы буквально в считанных секундах от своей первой JavaScript-программы.

Для того чтобы её написать, если вы пользуетесь Google Chrome, откройте меню браузера и выберите в нём команду Дополнительные инструменты > Инструменты разработчика. Окно браузера окажется разделённым на две части. В одной из них будет видна страница, в другой откроется панель с инструментами разработчика, содержащая несколько закладок. Нас интересует закладка Console (Консоль). Щёлкните по ней. Не обращайте внимания на то, что уже может в консоли присутствовать (для её очистки можете воспользоваться комбинацией клавиш Ctrl + L). Нас сейчас интересует приглашение консоли. Именно сюда можно вводить JavaScript-код, который выполняется по нажатию клавиши Enter. Введём в консоль следующее:

console.log("Hello, world!")

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

После того, как текст программы оказался в консоли, нажмём клавишу Enter.

Если всё сделано правильно — под этой строчкой появится текст Hello, world!. На всё остальное пока не обращайте внимания.

Первая программа в консоли браузера — вывод сообщения в консоль

Ещё один вариант браузерного «Hello, world!» заключается в выводе окна с сообщением. Делается это так:

alert("Hello, world!")

Вот результат выполнения этой программы.

Вывод сообщения в окне

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

Инструменты разработчика, и, в том числе, консоль, имеются и в других браузерах. Консоль хороша тем, что она, когда вы пользуетесь браузером, всегда под рукой.

Существуют и другие способы запуска JS-кода в браузере. Так, если говорить об обычном использовании программ на JavaScript, они загружаются в браузер для обеспечения работы веб-страниц. Как правило, код оформляют в виде отдельных файлов с расширением .js, которые подключают к веб-страницам, но программный код можно включать и непосредственно в код страницы. Всё это делается с помощью тега <script>. Когда браузер обнаруживает такой код, он выполняет его. Подробности о теге script можно посмотреть на сайте w3school.com. В частности, рассмотрим пример, демонстрирующий работу с веб-страницей средствами JavaScript, приведённый на этом ресурсе. Этот пример можно запустить и средствами данного ресурса (ищите кнопку Try it Yourself), но мы поступим немного иначе. А именно, создадим в каком-нибудь текстовом редакторе (например — в VS Code или в Notepad++) новый файл, который назовём hello.html, и добавим в него следующий код:

<!DOCTYPE html>
<html>
  <body>
    <p id="hello"></p>

    <script>
      document.getElementById("hello").innerHTML = "Hello, world!";
    </script>
  </body>
</html>

Здесь нас больше всего интересует строчка document.getElementById("hello").innerHTML = "Hello, world!";, представляющая собой JS-код. Этот код заключён в открывающий и закрывающий теги <script>. Он находит в документе HTML-элемент с идентификатором hello и меняет его свойство innerHTML (то есть — тот HTML код, который содержится внутри этого элемента) на Hello, world!. Если открыть файл hello.html в браузере, на ней будет выведен заданный текст.

Сообщение, выведенное средствами JavaScript в HTML-элемент

Как уже говорилось, примеры, приводимые на сайте w3school.com, можно тут же и попробовать. Существуют и специализированные онлайн-среды для веб-разработки, и, в частности, для выполнения JS-кода. Среди них, например codepen.io, jsfiddle.net, jsbin.com.

Вот, например, как выглядит наш пример, воссозданный средствами CodePen.

В поле HTML попадает код, описывающий HTML-элемент, в поле JS — JavaScript-код, а в нижней части страницы выводится результат.

Выше мы говорили о том, что JavaScript-программы можно выполнять на различных платформах, одной из которых является серверная среда Node.js. Если вы собираетесь изучать JavaScript, ориентируясь именно на серверную разработку, вероятно, вам стоит запускать примеры именно средствами Node.js. Учтите, что, говоря упрощённо, и не учитывая особенности поддержки конкретных возможностей языка используемыми версиями Node.js и браузера, в Node.js и в браузере будет работать один и тот же код, в котором используются базовые механизмы языка. То есть, например, команда console.log("Hello, world!") будет работать и там и там. Программы, использующие механизмы, специфичные для браузеров, в Node.js работать не будут (то же самое касается и попыток запуска программ, рассчитанных на Node.js, в браузере).

Для того чтобы запустить наш «Hello, world!» в среде Node.js, установим Node.js, скачав отсюда подходящий дистрибутив. Теперь создадим файл hello.js и поместим в него следующий код:

console.log('Hello, World!');

Средствами командной строки перейдём в папку, в которой хранится этот файл, и выполним такую команду:

node hello.js

Вот каким будет результат её выполнения:

Сообщение, выведенное средствами Node.js

Кстати, вы могли заметить (и, скорее всего, заметили, если набирали код самостоятельно), что в некоторых из вышеприведённых примеров, в конце строк, используется точка с запятой, а в некоторых — нет. В некоторых текст, который мы хотим вывести в консоль или в виде сообщения, обрамляется двойными кавычками, а в некоторых — одинарными. Возможно, сейчас вы задаётесь вопросом о том, почему это так, и о том, как, если разные варианты кода работают без ошибок, писать этот код правильно. Если ответить на этот вопрос, не вдаваясь в подробности и не учитывая некоторые мелкие детали, то можно сказать, что и тот и другой вариант использования кавычек и точки с запятой допустимы, и то, что работают они одинаково. Выбор конкретного варианта зависит от стиля написания кода, которого придерживается программист, и от потребностей некоего фрагмента программы. Кроме того, на этих простых примерах вы могли ощутить одну из характерных для JavaScript черт, которая заключается в том, что язык даёт программисту определённую свободу.

Теперь, после того, как состоялось ваше первое знакомство с JavaScript, предлагаем подробнее поговорить об этом языке.

Общие сведения о JavaScript

JavaScript — это один из самых популярных языков программирования в мире. Он, созданный более 20 лет назад, прошёл в своём развитии огромный путь. JavaScript задумывался как скриптовый язык для браузеров. В самом начале он обладал куда более скромными возможностями, чем сейчас. Его, в основном, использовали для создания несложных анимаций, вроде выпадающих меню, о нём знали как о части технологии Dynamic HTML (DHTML, динамический HTML).

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

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

Основные характеристики JavaScript

JavaScript — это язык, который отличается следующими особенностями:

  • Высокоуровневый. Он даёт программисту абстракции, которые позволяют не обращать внимание на особенности аппаратного обеспечения, на котором выполняются JavaScript-программы. Язык автоматически управляет памятью, используя сборщик мусора. Разработчик, в результате, может сосредоточиться на решении стоящих перед ним задач, не отвлекаясь на низкоуровневые механизмы (хотя, надо отметить, это не отменяет необходимости в рациональном использовании памяти). Язык предлагает мощные и удобные средства для работы с данными различных типов.
  • Динамический. В отличие от статических языков программирования, динамические языки способны, во время выполнения программы, выполнять действия, которые статические языки выполняют во время компиляции программ. У такого подхода есть свои плюсы и минусы, но он даёт в распоряжение разработчика такие мощные возможности, как динамическая типизация, позднее связывание, рефлексия, функциональное программирование, изменение объектов во время выполнения программы, замыкания и многое другое.
  • Динамически типизированный. Типы переменных при JS-разработке задавать необязательно. В одну и ту же переменную можно, например, сначала записать строку, а потом — целое число.
  • Слабо типизированный. В отличие от языков с сильной типизацией, языки со слабой типизацией не принуждают программиста, например, использовать в неких ситуациях объекты определённых типов, выполняя, при необходимости, неявные преобразования типов. Это даёт больше гибкости, но JS-программы не являются типобезопасными, из-за этого усложняются задачи проверки типов (на решение этой проблемы направлены TypeScript и Flow).
  • Интерпретируемый. Широко распространено мнение, в соответствии с которым JavaScript является интерпретируемым языком программирования, что означает, что программы, написанные на нём, не нуждаются в компиляции перед выполнением. JS в этом плане противопоставляют таким языкам, как C, Java, Go. На практике же браузеры, для повышения производительности программ, выполняют компиляцию JS-кода перед его выполнением. Этот шаг, однако, прозрачен для программиста, он не требует от него дополнительных усилий.
  • Мультипарадигменный. JavaScript не навязывает разработчику использование какой-то конкретной парадигмы программирования, в отличие, например, от Java (объектно-ориентированное программирование) или C (императивное программирование). Писать JS-программы можно, используя объектно-ориентированную парадигму, в частности — применяя прототипы и появившиеся в стандарте ES6 классы. Программы на JS можно писать и в функциональном стиле, благодаря тому, что функции здесь являются объектами первого класса. JavaScript допускает и работу в императивном стиле, используемом в C.

Да, кстати, надо отметить, что у JavaScript и Java нет ничего общего. Это — совершенно разные языки.

JavaScript и стандарты

ECMAScript, или ES, это название стандарта, которым руководствуются разработчики JavaScript-движков, то есть — тех сред, где выполняются JS-программы. Различные стандарты вводят в язык новые возможности, говоря о которых нередко упоминают наименование стандартов в сокращённой форме, например — ES6. ES6 — это то же самое, что и ES2015, только в первом случае число означает номер версии стандарта (6), а во втором — год принятия стандарта (2015).

Сложилось так, что в мире веб-программирования очень долго был актуален стандарт ES3, принятый в 1999 году. Четвёртой версии стандарта не существует (в неё попытались добавить слишком много новых возможностей и так и не приняли). В 2009 году был принят стандарт ES5, который представлял собой прямо-таки огромное обновление языка, первое за 10 лет. После него, в 2011 году, был принят стандарт ES5.1, в нём тоже было немало нового. Весьма значительным, в плане новшеств, стал и стандарт ES6, принятый в 2015 году. Начиная с 2015 года, новые версии стандарта принимают каждый год.

Самой свежей версией стандарта на момент публикации этого материала является ES9, принятая в июне 2018 года.

Итоги

Сегодня мы написали «Hello, World!» на JavaScript, рассмотрели основные особенности языка и поговорили о его стандартизации. В следующий раз поговорим о стиле JavaScript-текстов и о лексической структуре программ.

Уважаемые читатели! Если вы, до чтения этого материала, не были знакомы с JavaScript, просим рассказать о том, получилось ли у вас запустить «Hello, world!».

Последнее обновление: 14.09.2023

  1. Глава 1. Введение в JavaScript

    1. Что такое JavaScript

    2. Первая программа на JavaScript

    3. Выполнение кода javascript

    4. Подключение внешнего файла JavaScript

    5. Консоль браузера и console.log

  2. Глава 2. Основы javascript

    1. Переменные и константы

    2. Типы данных

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

    4. Поразрядные операции

    5. Условные выражения

    6. Условные операторы ?: и ??

    7. Преобразование данных

    8. Введение в массивы

    9. Условные конструкции

    10. Циклы

    11. Отладка и отладчик

  3. Глава 3. Функциональное программирование

    1. Функции

    2. Параметры функции

    3. Результат функции

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

    5. Область видимости переменных

    6. Замыкания и функции IIFE

    7. Паттерн Модуль

    8. Рекурсивные функции

    9. Переопределение функций

    10. Hoisting

    11. Передача параметров по значению и по ссылке

  4. Глава 4. Объектно-ориентированное программирование

    1. Объекты

    2. Вложенные объекты и массивы в объектах

    3. Копирование и сравнение объектов

    4. Проверка наличия и перебор методов и свойств

    5. Объекты в функциях

    6. Конструкторы объектов

    7. Расширение объектов. Prototype

    8. Инкапсуляция

    9. Функция как объект. Методы call и apply

    10. Наследование

    11. Ключевое слово this

    12. Деструктуризация

    13. Оператор ?.

  5. Глава 5. ООП. Классы

    1. Классы

    2. Приватные поля и методы

    3. Статические поля и методы

    4. Свойства и методы доступа

    5. Наследование

  6. Глава 6. Массивы

    1. Создание массива и объект Array

    2. Массивы и spread-оператор

    3. Операции с массивами

    4. Наследование массивов

  7. Глава 7. Строки

    1. Строки и объект String

    2. Шаблоны строк

    3. Объект RegExp. Регулярные выражения

    4. Регулярные выражения в методах String

    5. Синтаксис регулярных выражений

    6. Группы в регулярных выражениях

  8. Глава 8. Встроенные объекты

    1. Объект Date. Работа с датами

    2. Объект Math. Математические операции

    3. Объект Number

    4. Символы

    5. Proxy

  9. Глава 9. Обработка ошибок

    1. Конструкция try..catch..finally

    2. Генерация ошибок и оператор throw

    3. Типы ошибок

    4. Обработка ошибок и стек вызова функций

  10. Глава 10. Работа с браузером и BOM

    1. Browser Object Model и объект window

    2. Управление окнами

    3. История браузера. Объект history

    4. Объект location

    5. Объект navigator

    6. Таймеры

  11. Глава 11. Работа с DOM

    1. Введение в DOM

    2. Объект document. Поиск элементов

    3. Свойства объекта document

    4. Объект Node. Навигация по DOM

    5. Создание, добавление и удаление элементов веб-станицы

    6. Объект Element. Управление элементами

    7. Изменение стиля элементов

    8. Создание своего элемента HTML

  12. Глава 12. События

    1. Введение в обработку событий

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

    3. Объект Event

    4. Распространение событий

    5. События мыши

    6. События клавиатуры

  13. Глава 13. Работа с формами

    1. Формы и их элементы

    2. Кнопки

    3. Текстовые поля

    4. Флажки и переключатели

    5. Список select

  14. Глава 14. JSON

    1. Введение в JSON

  15. Глава 15. Хранение данных

    1. Куки

    2. Web Storage

  16. Глава 16. Коллекции и итераторы

    1. Итераторы

    2. Генераторы

    3. Множества Set

    4. Map

    5. WeakSet

    6. WeakMap

  17. Глава 17. Promise, async и await

    1. Введение в промисы

    2. Получение результата операции в Promise

    3. Обработка ошибок в Promise

    4. Создание цепочек промисовх

    5. Функции Promise.all, Promise.allSettled, Promise.any и Promise.race

    6. Async и await

    7. Асинхронные итераторы

    8. Асинхронные генераторы

  18. Глава 18. Ajax

    1. Объект XMLHttpRequest

    2. Отправка данных

    3. Promise в Ajax-запросах

  19. Глава 19. Локализация

    1. Локализация списков и Intl.ListFormat

    2. Локализация дат и времени

    3. Локализация названий и Intl.DisplayNames

    4. Форматирование чисел и Intl.NumberFormat

  20. Глава 20. Модули

    1. Введение в модули

    2. Импорт модуля

    3. Экспорт и импорт компонентов модулей

    4. Экспорт и импорт по умолчанию

    5. Использование псевдонимов при экспорте и импорте

    6. Динамическая загрузка модулей

  21. Глава 21. Fetch API

    1. Функция fetch

    2. Объект Response и его свойства

    3. Получение данных из ответа

    4. Настройка параметров запроса. Отправка данных

    5. Создание клиента для REST API

  22. Глава 22. Остальные статьи

    1. JavaScript в CSS

  • Глава 1. Введение в JavaScript
    • Что такое JavaScript
    • Первая программа на JavaScript
    • Выполнение кода javascript
    • Подключение внешнего файла JavaScript
    • Консоль браузера и console.log
  • Глава 2. Основы javascript
    • Переменные и константы
    • Типы данных
    • Арифметические операции
    • Поразрядные операции
    • Условные выражения
    • Условные операторы ?: и ??
    • Преобразование данных
    • Введение в массивы
    • Условные конструкции
    • Циклы
    • Отладка и отладчик
  • Глава 3. Функциональное программирование
    • Функции
    • Параметры функции
    • Результат функции
    • Стрелочные функции
    • Область видимости переменных
    • Замыкания и функции IIFE
    • Паттерн Модуль
    • Рекурсивные функции
    • Переопределение функций
    • Hoisting
    • Передача параметров по значению и по ссылке
  • Глава 4. Объектно-ориентированное программирование
    • Объекты
    • Вложенные объекты и массивы в объектах
    • Копирование и сравнение объектов
    • Проверка наличия и перебор методов и свойств
    • Объекты в функциях
    • Конструкторы объектов
    • Расширение объектов. Prototype
    • Инкапсуляция
    • Функция как объект. Методы call и apply
    • Наследование
    • Ключевое слово this
    • Деструктуризация
    • Оператор ?.
  • Глава 5. ООП. Классы.
    • Классы
    • Приватные поля и методы
    • Статические поля и методы
    • Свойства и методы доступа
    • Наследование
  • Глава 6. Массивы
    • Создание массива и объект Array
    • Массивы и spread-оператор
    • Операции с массивами
    • Наследование массивов
  • Глава 7. Строки
    • Строки и объект String
    • Шаблоны строк
    • Объект RegExp. Регулярные выражения
    • Регулярные выражения в методах String
    • Синтаксис регулярных выражений
    • Группы в регулярных выражениях
  • Глава 8. Встроенные объекты
    • Объект Date. Работа с датами
    • Объект Math. Математические операции
    • Объект Number
    • Символы
    • Proxy
  • Глава 9. Обработка ошибок
    • Конструкция try..catch..finally
    • Генерация ошибок и оператор throw
    • Типы ошибок
    • Обработка ошибок и стек вызова функций
  • Глава 10. Работа с браузером и BOM
    • Browser Object Model и объект window
    • Управление окнами
    • История браузера. Объект history
    • Объект location
    • Объект navigator
    • Таймеры
  • Глава 11. Работа с DOM
    • Введение в DOM
    • Объект document. Поиск элементов
    • Свойства объекта document
    • Объект Node. Навигация по DOM
    • Создание, добавление и удаление элементов веб-станицы
    • Объект Element. Управление элементами
    • Изменение стиля элементов
    • Создание своего элемента HTML
  • Глава 12. События
    • Введение в обработку событий
    • Обработчики событий
    • Объект Event
    • Распространение событий
    • События мыши
    • События клавиатуры
  • Глава 13. Работа с формами
    • Формы и их элементы
    • Кнопки
    • Текстовые поля
    • Флажки и переключатели
    • Список select
  • Глава 14. JSON
    • Введение в JSON
  • Глава 15. Хранение данных
    • Куки
    • Web Storage
  • Глава 16. Коллекции и итераторы
    • Итераторы
    • Генераторы
    • Множества Set
    • Map
    • WeakSet
    • WeakMap
  • Глава 17. Promise, async и await
    • Введение в промисы
    • Получение результата операции в Promise
    • Обработка ошибок в Promise
    • Создание цепочек промисов
    • Функции Promise.all, Promise.allSettled, Promise.any и Promise.race
    • Async и await
    • Асинхронные итераторы
    • Асинхронные генераторы
  • Глава 18. Ajax
    • Объект XMLHttpRequest
    • Отправка данных
    • Promise в Ajax-запросах
  • Глава 19. Локализация
    • Локализация списков и Intl.ListFormat
    • Локализация дат и времени
    • Локализация названий и Intl.DisplayNames
    • Форматирование чисел и Intl.NumberFormat
  • Глава 20. Модули
    • Введение в модули
    • Импорт модуля
    • Экспорт и импорт компонентов модулей
    • Экспорт и импорт по умолчанию
    • Использование псевдонимов при экспорте и импорте
    • Динамическая загрузка модулей
  • Глава 21. Fetch API
    • Функция fetch
    • Объект Response и его свойства
    • Получение данных из ответа
    • Настройка параметров запроса. Отправка данных
    • Создание клиента для REST API
  • Глава 22. Прочие статьи
    • JavaScript в CSS

 Вернуться

Автор: Дэвид Флэнаган
Дата выхода: 2021
Издательство: Компьютерное издательство «Диалектика»
Количество страниц: 732

 JavaScript — это язык программирования для веб-сети, который в настоящее время используется большим количеством разработчиков программного обеспечения, чем любой другой язык программирования. В течение почти 25 лет этот бестселлер служил исчерпывающим руководством для программистов на JavaScript, и новое издание книги полностью обновлено с целью охвата версии 2020 языка JavaScript. Повсюду в книге вы будете находить яркие и привлекательные примеры кода. Вам также предлагаются новые главы, в которых раскрываются классы, модули, итераторы, генераторы, объекты Promise и async/await.

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

Если вам понравилась эта книга поделитесь ею с друзьями, тем самым вы помогаете нам
развиваться и добавлять всё больше интересных и нужным вам книг!

Учебник по JavaScript, с понятными и подробными материалами, содержащими множество примеров и решения различных реальных практических задач.

JavaScript – единственный язык программирования, встроенный в браузер. Он позволяет придать веб-страницам динамичность и интерактивность.

Обязательным условием для изучения JavaScript является знание двух других веб-технологий: HTML и CSS. В отличие от JavaScript, HTML и CSS – это языки для описания структуры и стилей веб-страниц.

  • Содержание
  • Лента

Часть 1: Основы JavaScript

  • Знакомство с JavaScript

    • Знакомство с JavaScript. Подключение к странице
    • Выражения, переменные и типы данных
    • Операторы
    • Логические и побитовые операторы
    • Работа с числами
    • Инструкции и их отличие от выражений
  • Условия и циклы

    • Условные инструкции
    • Циклы
  • Функции и область видимости

    • Функции и классический способ их создания
    • Функциональные выражения и стрелочные функции
    • Область видимости и контекст
    • Локальные и глобальные переменные
    • Замыкание
  • Объекты и объектно-ориентированное программирование

    • Основы создания объектов и работы с ними
    • Создание объектов с помощью конструктора
    • Прототипы и наследование
    • Всё о ES6 классах
    • Практика по ES6 классам

      • Анимация на JavaScript с помощью Canvas и ES6 классов
    • Создание собственных объектов
  • Массивы и их обработка

    • Массивы
    • Сортировка массива с помощью функции
    • Ассоциативные массивы
    • Работа с массивами
  • Дата и время
  • Математика (объект Math)
  • Обработка ошибок, try…catch
  • Глобальный объект

Часть 2: Асинхронный JavaScript

  • Асинхронность в JavaScript. setTimeout и setInterval
  • Изучение промисов с примерами
  • Написание асинхронного кода с помощью async/await

Часть 3: JavaScript в браузере

  • Объектная модель браузера (BOM)

    • Объектная модель браузера
    • Объект window: открытие и закрытие окон
    • Размеры окна и позиция прокрутки
    • Перемещение окна и прокрутка страницы
    • alert, prompt и confirm — диалоговые окна в JavaScript
    • Объект window: фреймы
    • Методы btoa и atob
    • Объект Location — URL документа
    • Объект Navigator – информация о браузере
    • Объект History — история просмотра страниц
    • Объект Screen – информация об экране
    • Объект Document — содержимое окна браузера
  • DOM и его изменение

    • Что такое DOM и зачем он нужен?
    • Узлы и элементы DOM-дерева
    • Структура и обход документа
    • Методы для выбора HTML-элементов на странице
    • Получение и установка контента элементам
    • Работа с атрибутами и свойствами элементов
    • Управление классами и стилями элементов
    • Создание, вставка и удаление элементов
    • Размеры и скроллинг элементов
  • Браузерные события

    • Введение в события. Обработчик событий
    • Всплытие и погружение событий
    • Свойства и методы объекта события
    • Отмена стандартных действий браузера
    • Создание кастомных событий
    • Браузерные события и примеры их использования
    • Обработка событий CSS-переходов
  • Хранение данных в браузере

    • Cookies
    • LocalStorage и SessionStorage

Часть 4: Общение с сервером, AJAX

  • Формат передачи данных JSON и методы для работы с ним
  • Сбор данных с HTML-формы с помощью FormData
  • Что такое AJAX? Создание асинхронных запросов
  • Fetch API
  • Назначение и применение AJAX при создании сайтов

Часть 5: Создание интерактивных компонентов интерфейса

  • Todo List
  • Вертикальный аккордеон
  • Всплывающие сообщения
  • Кнопка «Показать ещё»
  • Модальное окно
  • Пользовательский (кастомный) Select
  • Слайдер с несколькими активными элементами
  • Слайдер с одним активным элементом
  • Табы (вкладки)
  • Таймер обратного отсчёта
  • в которых используется серверный php-код

    • Звездный рейтинг для оценки материалов на сайте
    • Простой чат-бот
    • Социальные кнопки
    • Форма обратной связи

Часть 6: Примеры скриптов для решения различных задач на сайте

  • Кнопка для прокрутки страницы вверх
  • Ленивая подсветка синтаксиса кода с помощью highlight.js
  • Оглавление для статей на сайте
  • Подключение рекламы AdSense и РСЯ к сайту
  • Прелоадер для сайта
  • Использование FileReader для чтения файлов

Часть 7: Редакторы кода и IDE

  • Настройка VS Code для разработки на JavaScript

Часть 8: Использование сторонних библиотек в веб-разработке

  • JS плагины для создания маски input
  • Копирование данных в буфер с помощью Clipboard.js

Часть 9: Библиотека jQuery

  • Что такое jQuery? Загрузка и подключение к сайту
  • С чего начинается написание кода на jQuery?
  • Выбор, фильтрация и перемещение по элементам

    • Выбор элементов
    • Фильтры для выбора элементов
    • Работа с выборкой
    • Навигация по элементам
    • Фильтрация элементов набора
    • Цепочка методов
  • Атрибуты, свойства, стили и классы

    • Атрибуты элементов
    • Добавление и удаление классов
    • Работа с HTML, текстом и атрибутом value
    • Добавление и удаление DOM-свойств (disabled, checked, selected и т.д.)
    • Получение и установка CSS-свойств элементам
    • Ширина и высота элементов (в планах)
    • Позиционирование элементов
    • data-атрибуты и внутреннее хранилище jQuery
  • Манипуляции над элементами

    • Создание, добавление и удаление элементов
  • События и их обработка
  • Визуальные эффекты

    • Управление видимостью (базовые эффекты)
    • Создание анимации (в планах)
  • Ajax

    • Сокращённые AJAX методы
    • События AJAX (в планах)
    • Получение данных формы
  • Вспомогательные функции и методы jQuery

    • Перебор массива, объекта и элементов

Добро пожаловать на сайт Code Library — ваш онлайн-ресурс бесплатных электронных книг по программированию. У нас вы можете скачать книги по JavaScript в формате PDF.

Широкий выбор книг по JavaScript на русском

У нас вы найдете широкий выбор книг, которые помогут вам расширить знания и стать экспертом в IT области. Независимо от уровня опыта, мы предлагаем книги по js для начинающих, так и для опытных web-разработчиков. JavaScript книги на русском, скачать бесплатно, которые можно у нас на сайте, помогут расширить знания и освоить новые языки и технологии.

Как скачать JavaScript книгу в PDF?

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

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

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

Понравилась статья? Поделить с друзьями:
  • Стиль руководства 1 ключевое
  • Нормамед инструкция по применению для детей от 3 лет дозировка
  • Осциллятор осппз 300м 1 инструкция по применению
  • На немецкий руководство проектом
  • Бортовой компьютер старт на ваз 2114 инструкция по эксплуатации