С чего начать работу с javascript
Основы JavaScript
JavaScript – это язык программирования, который добавляет интерактивность на ваш веб-сайт (например: игры, отклик при нажатии кнопок или при вводе данных в формы, динамические стили, анимация). Эта статья поможет вам начать работать с этим захватывающим языком и даст вам представление о том, на что он способен.
Что такое JavaScript на самом деле?
JavaScript («JS» для краткости) — это полноценный динамический язык программирования, который применяется к HTML документу, и может обеспечить динамическую интерактивность на веб-сайтах. Его разработал Brendan Eich, сооснователь проекта Mozilla, Mozilla Foundation и Mozilla Corporation.
JavaScript невероятно универсален и дружелюбен к новичкам. Обладая большим опытом, вы сможете создавать игры, анимированную 2D и 3D графику, полномасштабные приложения с базами данных и многое другое!
JavaScript сам по себе довольно компактный, но очень гибкий. Разработчиками написано большое количество инструментов поверх основного языка JavaScript, которые разблокируют огромное количество дополнительных функций с очень небольшим усилием. К ним относятся:
Поскольку эта статья должна быть только лёгким введением в JavaScript, мы не собираемся путать вас на этом этапе, подробно рассказывая о том, какая разница между основным языком JavaScript и различными инструментами, перечисленными выше. Вы можете подробно изучить все это позже, в нашей учебной области JavaScript и в остальной части MDN.
Ниже мы познакомим вас с некоторыми аспектами основного языка, и вы также будете играть с несколькими функциями API браузера. Веселитесь!
Пример «hello world»
Предыдущий раздел звучит очень многообещающе, и это на самом деле так — JavaScript является одной из самых перспективных веб-технологий, и когда вы освоитесь и начнёте использовать его, ваши веб-сайты перейдут в новое измерение мощи и креативности.
Тем не менее, с JavaScript немного более сложно освоиться, чем с HTML и CSS. Вам придётся начать с малого, продолжая изучение небольшими шагами. Для начала мы покажем вам, как добавить некоторые основы JavaScript на вашу страницу, чтобы создать «hello world!» пример (стандарт в начальных примерах программирования).
Важно: Если вы не следили за остальным нашим курсом, скачайте этот пример кода и используйте его в качестве стартовой точки.
Руководство по JavaScript, часть 1: первая программа, особенности языка, стандарты
Недавно мы провели опрос, посвящённый целесообразности перевода этого руководства по JavaScript. Как оказалось, около 90% проголосовавших отнеслись к данной идее положительно. Поэтому сегодня публикуем первую часть перевода.
Это руководство, по замыслу автора, рассчитано на тех, кто уже немного знаком JavaScript и хочет привести свои знания в порядок а также узнать о языке что-то новое. Мы решили немного расширить аудиторию этого материала, включить в неё тех, кто совершенно ничего не знает о JS, и начать его с написания нескольких вариантов «Hello, world!».
Hello, world!
Программа, которую по традиции называют «Hello, world!», очень проста. Она выводит куда-либо фразу «Hello, world!», или другую подобную, средствами некоего языка.
JavaScript — это язык, программы на котором можно выполнять в разных средах. В нашем случае речь идёт о браузерах и о серверной платформе Node.js. Если до сих пор вы не написали ни строчки кода на JS и читаете этот текст в браузере, на настольном компьютере, это значит, что вы буквально в считанных секундах от своей первой JavaScript-программы.
Этот текст можно ввести с клавиатуры, можно скопировать и вставить его в консоль. Результат будет одним и тем же, но, если вы учитесь программировать, рекомендуется вводить тексты программ самостоятельно, а не копировать их.
Первая программа в консоли браузера — вывод сообщения в консоль
Ещё один вариант браузерного «Hello, world!» заключается в выводе окна с сообщением. Делается это так:
Вот результат выполнения этой программы.
Вывод сообщения в окне
Обратите внимание на то, что панель инструментов разработчика расположена теперь в нижней части экрана. Менять её расположение можно, воспользовавшись меню с тремя точками в её заголовке и выбирая соответствующую пиктограмму. Там же можно найти и кнопку для закрытия этой панели.
Инструменты разработчика, и, в том числе, консоль, имеются и в других браузерах. Консоль хороша тем, что она, когда вы пользуетесь браузером, всегда под рукой.
Лайфхак: в какой последовательности изучать JavaScript
Огромный инструментарий JS и тонны материалов по нему. С чего начать? Расскажем, как изучать JavaScript, и предоставим полезные ссылки.
Сперва следует понять, для чего вам нужен JavaScript
JavaScript (JS) – нативный язык, база, а библиотеки и JavaScript фреймворки – все то, что уже «накладывается» сверху. Язык программирования JavaScript клиентский и выполняется на стороне браузера. Грубо говоря, вся нагрузка ложится именно на ПК пользователя, а не на сервер, как было бы в случае с PHP. Поэтому кривой скрипт также будет затрагивать напрямую клиента, а не сервер: хорошо для вас, да плохо для пользователя.
Подробнее о том, что такое JavaScript, вы сможете узнать из данного видео:
Определиться со стеком
Не упускайте из виду JavaScript фреймворки, библиотеки и прочие инструменты.
Теперь давайте условимся: идеальной последовательности не существует. Все напрямую зависит от того, чем вы занимаетесь и на что ориентированы: фронтенд или full-stack. Если первое, делайте меньший упор на взаимодействие с серверной частью, а если второе – напротив. Изучать JavaScript вы можете и по своему плану. Наш – лишь одна из возможных вариаций, которая, тем не менее, имеет право на существование.
Выстраиваем последовательность
1. JavaScript основы
Книги по JavaScript для начинающих и аналогичные видеоуроки, которые разбудят в вас веб-разработчика. Массивы, коллекции, строки и прочий базис обязательны к изучению на старте. Список литературы солидный, поэтому в первую очередь загляните сюда:
И еще много чего интересного в нашей статье 16 бесплатных книг по JavaScript.
2. jQuery
Рекомендуем ознакомиться с серией видео «Уроки jQuery» от Web Developer Blog. Вы узнаете все о jQuery, начиная синтаксисом и заканчивая практической реализацией того, что может потребоваться.
3. JavaScript: углубленное изучение
Начинаем изучать JavaScript более серьезно.
В этом поможет неплохой видеокурс от loftblog под названием «Продвинутый JavaScript»:
4. Node.js
И вот мы переходим к самому «вкусному». В сети немало материалов по Node.js, но мы предлагаем сперва ознакомиться с нашими статьями:
Далее посмотрите серию уроков Node.js от ITVDN:
Ребята излагают материал максимально доступно, так что никто не уйдет «обиженным» 😉
5. npm
Менеджер пакетов, который входит в Node.js. Нужен, важен и нередко украшает требования вакансий. У Дмитрия Лаврика есть хорошее видео, разбирающее по косточкам npm в рамках основ:
Захотите узнать больше – обязательно найдете на его канале дополнительные видео, посвященные данному менеджеру.
6. Gulp
Исчерпывающий ответ на вопрос «Что это такое» дает Современный учебник JavaScript: Скринкаст по Gulp. Все выпуски скринкаста собраны в одном месте, что безумно удобно.
7. Webpack
За основой по Webpack вам на канал WebForMySelf:
8. Angular/Vue/React
Выше уже упоминалось, что можно выбрать что-то одно, но все зависит от конкретного проекта и соответствующих требований к нему. Хоть Vue.js сейчас по обсуждениям впереди планеты всей, затронем каждый из трех инструментов.
Angular курс
Vue.js
Знакомство с React
Надеемся, вам помог наш лайфхак. Если же вы знаете более эффективный способ изучить JS – поделитесь в комментариях 🙂
Вас также могут заинтересовать другие материалы по теме:
Основы JavaScript для начинающих разработчиков
Материал, перевод которого мы сегодня публикуем, посвящён основам JavaScript и предназначен для начинающих программистов. Его можно рассматривать и как небольшой справочник по базовым конструкциям JS. Здесь мы, в частности, поговорим о системе типов данных, о переменных, о массивах, о функциях, о прототипах объектов, и о некоторых других особенностях языка.
Примитивные типы данных
▍Числа
Арифметические операции JS работают вполне привычным образом, но надо обратить внимание на то, что оператор + может выполнять и сложение чисел, и конкатенацию строк.
▍Строки
Строки, как и другие примитивные значения, иммутабельны. Например, метод concat() не модифицирует существующую строку, а создаёт новую.
▍Логические значения
Объекты
Объекты — это динамические структуры, состоящие из пар ключ-значение. Значения могут иметь примитивные типы данных, могут быть объектами или функциями.
Объекты проще всего создавать, используя синтаксис объектных литералов:
Свойства объекта можно, в любое время, читать, добавлять, редактировать и удалять. Вот как это делается:
Объекты в языке реализованы в виде хэш-таблиц. Простую хэш-таблицу можно создать, используя команду Object.create(null) :
Для перебора всех свойств объекта можно воспользоваться командой Object.keys() :
▍Сравнение значений примитивных типов и объектов
При практической работе с примитивными значениями можно, как уже было сказано, воспринимать их как объекты, у которых есть свойства и методы, хотя объектами они не являются. Примитивные значения иммутабельны, внутренняя структура объектов может меняться.
Переменные
Если переменная объявлена за пределами какой-либо функции, её область видимости является глобальной.
Массивы
Методы массивов позволяют легко реализовывать такие структуры данных, как стеки и очереди:
Функции
Функции в JavaScript являются объектами. Функции можно назначать переменным, хранить в объектах или массивах, передавать в виде аргументов другим функциям и возвращать из других функций.
Существует три способа объявления функций:
▍Классическое объявление функции
При таком подходе к объявлению функций действуют следующие правила:
▍Функциональные выражения
При использовании функциональных выражений нужно учитывать следующее:
▍Стрелочные функции
▍Способы вызова функций
Функции можно вызывать различными способами.
С чего начать учить JavaScript? 5 шагов для старта
JavaScript — один из тех языков программирования, которые можно просто освоить без опыта. Он используется для веб-разработки, на нем можно создавать серверные приложения, 3D-игры и даже программировать робототехнику. Автор блога SkillFactory Максим Рудик рассказывает, с чего начать изучение JavaScript.
Заложите основы
Основы любого языка программирования — это типы данных, переменные, операторы, циклы, функции. Знаний в этих областях будет достаточно, чтобы научиться писать код на JavaScript.
Одновременно с этим или раньше нужно освоить основы HTML и CSS — это язык разметки и каскадные таблицы стилей, с помощью которых создаются статичные веб-страницы. Чаще всего JavaScript используется именно для работы с элементами веб-страниц. Без знания их устройства будет сложно перейти от теории к практике.
Новичкам советуем почитать:
Научитесь разрабатывать интерактивные веб-сайты и приложения на JavaScript и HTML и получите востребованную IT-профессию. Дополнительная скидка 5% по промокоду BLOG.
Освойте JQuery и популярные плагины
Чтобы понять, как работает JavaScript, проще всего начать с веб-разработки. Тут стоит освоить библиотеку JQuery. В ней та же логика, что и в чистом JavaScript, но она позволяет писать код кратко за счет более лаконичного синтаксиса. JQuery долго была самой популярной JavaScript-библиотекой для работы с веб-сайтами. В 2010-х появились новые фреймворки — Angular, React и Vue.js, а популярность JQuery стала снижаться.
Но ей не стоит пренебрегать хотя бы потому, что на ней написано огромное количество веб-сайтов, которые нужно поддерживать и развивать. Нередко работа начинающего программиста заключается в обслуживании кода, который достался ему «в наследство» от предшественников.
Материалов для изучения в сети достаточно: от официальной документации до подробнейших справочных и обучающих ресурсов и бесплатных видеоуроков.
Научитесь искать плагины и работать с ними. Они нужны, чтобы упростить работу с популярными элементами интерфейса. Они написаны на чистом JavaScript, практика их подключения и настройки не требует глубоких знаний, но хорошо тренирует владение языком. Это могут быть плагины для создания модальных окон (Tingle), галерей (lightgallery.js), встроенных объектов (SuperEmbed.js) и многих других элементов веб-страницы.
Читайте также: Что выбрать: frontend, backend или fullstack?
Разберитесь с Node.js
Дальше нужно разобраться, что происходит на сервере: что такое базы данных и как они взаимодействуют с клиентской частью веб-приложения.
Для этого можно изучить Node.js. Это серверная платформа, где выполняется JavaScript. C ее помощью можно полностью реализовать backend веб-приложения. Для полноценного освоения клиентской части будет достаточно базовых знаний Node.js.
Выберите: Angular, React или Vue.js
Дальнейшие шаги зависят от того, чем вы хотите заниматься. Самый популярный путь дальнейшего изучения JavaScript — освоение инструментов для веб-разработки.
Пользователям важно, чтобы страницы интернет-магазина, сайта соцсети или новостного портала загружались быстро, а владельцам в свою очередь важно, чтоб пользователи не покидали сайты из-за медленного интерфейса. Именно в результате погони за скоростью и производительностью появились такие JavaScript-фреймворки, как Angular и Vue.js и библиотека React.
С их помощью разработчики смогли перейти от формирования страницы на стороне сервера (Server Side Rendering) к формированию страницы на клиентской стороне (Client Side Rendering), то есть в браузере. В рамках этого перехода появилось понятие одностраничных или изоморфных приложений (Single Page Application).
Такие приложения загружают разметку с сервера только один раз, после чего при переходе на новые страницы запрошенная с сервера информация приходит в специальном формате, без HTML-тегов. Это работает намного быстрее, чем передача каждой запрошенной страницы с сервера в браузер.
Начать изучать фреймворки стоит с Vue.js. Он основан на тех же концепциях, что React и Angular, но появился позже них, организован более стройно и логично, поэтому в нем проще разобраться новичкам. Также для Vue есть подробная документация на русском языке.
Начните осваивать инструменты разработчика
Уже в процессе изучения JavaScript начинайте осваивать инструменты экосистемы веб-разработки на Javascript, необходимые для работы в команде:
Когда освоите главные инструменты — можно смело выбирать специализацию. JavaScript используется не только во frontend-разработке, но и для создания мобильных, десктопных приложений и игр и даже для программирования бытовой техники и оборудования.
Изучите HTML, CSS и Javascript, чтобы получить перспективную и творческую IT-профессию.

