Name already in use
ru.javascript.info / 1-js / 01-getting-started / 1-intro / article.md
- Go to file T
- Go to line L
- Copy path
- Copy permalink
- Open with Desktop
- View raw
- Copy raw contents Copy raw contents
Copy raw contents
Copy raw contents
Введение в JavaScript
Давайте посмотрим, что такого особенного в JavaScript, чего можно достичь с его помощью и какие другие технологии хорошо с ним работают.
Что такое JavaScript?
Изначально JavaScript был создан, чтобы «сделать веб-страницы живыми».
Программы на этом языке называются скриптами. Они могут встраиваться в HTML и выполняться автоматически при загрузке веб-страницы.
Скрипты распространяются и выполняются, как простой текст. Им не нужна специальная подготовка или компиляция для запуска.
Это отличает JavaScript от другого языка — Java.
Сегодня JavaScript может выполняться не только в браузере, но и на сервере или на любом другом устройстве, которое имеет специальную программу, называющуюся «движком» JavaScript.
У браузера есть собственный движок, который иногда называют «виртуальная машина JavaScript».
Разные движки имеют разные «кодовые имена». Например:
-
— в Chrome, Opera и Edge. — в Firefox.
- . Ещё есть «Chakra» для IE, «JavaScriptCore», «Nitro» и «SquirrelFish» для Safari и т.д.
Эти названия полезно знать, так как они часто используются в статьях для разработчиков. Мы тоже будем их использовать. Например, если «функциональность X поддерживается V8», тогда «Х», скорее всего, работает в Chrome, Opera и Edge.
Что может JavaScript в браузере?
Современный JavaScript — это «безопасный» язык программирования. Он не предоставляет низкоуровневый доступ к памяти или процессору, потому что изначально был создан для браузеров, не требующих этого.
Возможности JavaScript сильно зависят от окружения, в котором он работает. Например, Node.JS поддерживает функции чтения/записи произвольных файлов, выполнения сетевых запросов и т.д.
В браузере для JavaScript доступно всё, что связано с манипулированием веб-страницами, взаимодействием с пользователем и веб-сервером.
Например, в браузере JavaScript может:
- Добавлять новый HTML-код на страницу, изменять существующее содержимое, модифицировать стили.
- Реагировать на действия пользователя, щелчки мыши, перемещения указателя, нажатия клавиш.
- Отправлять сетевые запросы на удалённые сервера, скачивать и загружать файлы (технологии AJAX и COMET).
- Получать и устанавливать куки, задавать вопросы посетителю, показывать сообщения.
- Запоминать данные на стороне клиента («local storage»).
Чего НЕ может JavaScript в браузере?
Возможности JavaScript в браузере ограничены ради безопасности пользователя. Цель заключается в предотвращении доступа недобросовестной веб-страницы к личной информации или нанесения ущерба данным пользователя.
Примеры таких ограничений включают в себя:
JavaScript на веб-странице не может читать/записывать произвольные файлы на жёстком диске, копировать их или запускать программы. Он не имеет прямого доступа к системным функциям ОС.
Современные браузеры позволяют ему работать с файлами, но с ограниченным доступом, и предоставляют его, только если пользователь выполняет определённые действия, такие как «перетаскивание» файла в окно браузера или его выбор с помощью тега <input> .
Существуют способы взаимодействия с камерой/микрофоном и другими устройствами, но они требуют явного разрешения пользователя. Таким образом, страница с поддержкой JavaScript не может незаметно включить веб-камеру, наблюдать за происходящим и отправлять информацию в ФСБ.
Различные окна/вкладки не знают друг о друге. Иногда одно окно, используя JavaScript, открывает другое окно. Но даже в этом случае JavaScript с одной страницы не имеет доступа к другой, если они пришли с разных сайтов (с другого домена, протокола или порта).
Это называется «Политика одинакового источника» (Same Origin Policy). Чтобы обойти это ограничение, обе страницы должны согласиться с этим и содержать JavaScript-код, который специальным образом обменивается данными.
Это ограничение необходимо, опять же, для безопасности пользователя. Страница https://anysite.com , которую открыл пользователь, не должна иметь доступ к другой вкладке браузера с URL https://gmail.com и воровать информацию оттуда.
JavaScript может легко взаимодействовать с сервером, с которого пришла текущая страница. Но его способность получать данные с других сайтов/доменов ограничена. Хотя это возможно в принципе, для чего требуется явное согласие (выраженное в заголовках HTTP) с удалённой стороной. Опять же, это ограничение безопасности.
Подобные ограничения не действуют, если JavaScript используется вне браузера, например — на сервере. Современные браузеры предоставляют плагины/расширения, с помощью которых можно запрашивать дополнительные разрешения.
Что делает JavaScript особенным?
Как минимум, три сильные стороны JavaScript:
JavaScript — это единственная браузерная технология, сочетающая в себе все эти три вещи.
Вот что делает JavaScript особенным. Вот почему это самый распространённый инструмент для создания интерфейсов в браузере.
Хотя, конечно, JavaScript позволяет делать приложения не только в браузерах, но и на сервере, на мобильных устройствах и т.п.
Языки «над» JavaScript
Синтаксис JavaScript подходит не под все нужды. Разные люди хотят иметь разные возможности.
Это естественно, потому что проекты разные и требования к ним тоже разные.
Так, в последнее время появилось много новых языков, которые транспилируются (конвертируются) в JavaScript, прежде чем запустятся в браузере.
Современные инструменты делают транспиляцию очень быстрой и прозрачной, фактически позволяя разработчикам писать код на другом языке, автоматически преобразуя его в JavaScript «под капотом».
Примеры таких языков:
-
добавляет «синтаксический сахар» для JavaScript. Он вводит более короткий синтаксис, который позволяет писать чистый и лаконичный код. Обычно такое нравится Ruby-программистам. концентрируется на добавлении «строгой типизации» для упрощения разработки и поддержки больших и сложных систем. Разработан Microsoft. тоже добавляет типизацию, но иначе. Разработан Facebook. стоит особняком, потому что имеет собственный движок, работающий вне браузера (например, в мобильных приложениях). Первоначально был предложен Google, как замена JavaScript, но на данный момент необходима его транспиляция для запуска так же, как для вышеперечисленных языков. транспилирует Python в JavaScript, что позволяет писать приложения на чистом Python без JavaScript.
Есть и другие. Но даже если мы используем один из этих языков, мы должны знать JavaScript, чтобы действительно понимать, что мы делаем.
Javascript что это в браузере
JavaScript — это кроссплатформенный объектно-ориентированный язык сценариев, используемый для создания интерактивных веб-страниц (например, использование сложной анимации, создание нажимаемых кнопок, всплывающего меню и т. п.). Программы на этом языке называются скриптами. Они могут быть написаны прямо в HTML веб-страницы и запускаться автоматически при ее загрузке.

Почему JavaScript?
Изначально у языка JavaScript было другое имя – «LiveScript», но его решили поменять, поскольку в то время Java был очень популярным, а позиционирование нового языка как «младшего брата» Java сыграло только на руку.
Однако по мере развития JavaScript стал полностью независимым языком с собственной спецификацией ECMAScript, и теперь не имеет никакого отношения к Java.
Почему язык JavaScript уникальный?
JavaScript – это самый удобный инструмент для создания интерфейсов в браузере. И вот почему:
- Полностью интегрирован с HTML / CSS.
- Поддерживается всеми основными браузерами и включен в них по умолчанию.
- Позволяет делать приложения не только в браузерах, но и на сервере, на мобильных устройствах и т.п.
Что может делать JavaScript в браузере?
JavaScript в браузере может делать все, что связано с манипулированием веб-страницей, взаимодействием с пользователем и веб-сервером. Например:
- Добавлять новый HTML-код на страницу, изменять существующее содержимое, модифицировать стили.
- Реагировать на действия пользователя, щелчки мыши, перемещения указателя, нажатия клавиш.
- Отправлять сетевые запросы на удалённые сервера, скачивать и загружать файлы.
- Получать и устанавливать куки, задавать вопросы посетителю, показывать сообщения.
- Запоминать данные на стороне клиента («local storage»).
JavaScript и Java – одно и то же?
О нет. Это совершенно разные языки, созданные разными командами для разных задач. Сходство в именах связано лишь с маркетинговым ходом в середине 1990-х годов.
- Java – это скомпилированный язык для создания программного обеспечения.
- JavaScript – язык сценариев для создания динамических веб-страниц, то есть веб-страниц, которые отображают разный контент при каждом просмотре.
Как начать работу?
Начать работу с JavaScript легко: все, что нужно – современный веб-браузер, в котором необходимо открыть веб-консоль. Веб-консоль отображает информацию о загруженной в данный момент веб-странице, а также содержит интерпретатор JavaScript.
Чтобы открыть веб-консоль, нажмите следующую комбинацию клавиш: Ctrl + Shift + I (в Windows и Linux) и Cmd-Option-J (на Mac). Но также веб-консоль можно открыть, обратившись в меню «Посмотреть» в браузере и выбрать «Разработчик -> Консоль JavaScript».Веб-консоль появится в нижней или боковой части окна браузера. Внизу консоли находится строка, которую вы можете использовать для ввода JavaScript, а вывод отобразится на панели выше.

Чтобы начать писать код на JavaScript, откройте веб-консоль и напишите свой первый код JavaScript «Hello world»:

Нажмите Cmd + Enter или Ctrl + Enter (или нажмите кнопку Run), чтобы посмотреть, как код отображается в вашем браузере!

В этой статье вы познакомились с самым популярным и востребованным языком программирования в сфере веб-разработки. JavaScript был придуман специально для создания интерактивных веб-сайтов, которые реагируют на действия пользователей. Однако для создания полноценной веб-страницы одного JavaScript недостаточно. Если вы хотите развиваться в сфере веб-разработки и стать крутым веб-программистом, вам необходимо не только изучать новые технологии и углублять полученные знания, но и постоянно практиковать написание кода.
В онлайн-школе Айтилогия за 4 месяца вы сможете научиться верстать веб-страницы любой сложности, используя HTML, CSS и JavaScript. На курсе «Веб-верстальщик» вы получите все необходимые знания и мощную поддержку от автора Романа Чернова, чтобы устроиться в IT-компанию как junior-специалист, либо начать выполнять заказы на фрилансе. Приходите учиться и освойте одну из самых высокооплачиваемых профессий в 2020 году!
JavaScript
JavaScript (рус. джаваскрипт (яваскрипт — неправильное произношение)) является популярным языком программирования скриптов для веб-страниц и его поддерживает практически любой браузер. JavaScript добавляет интерактивность на веб-страницы.
Что даёт этот язык по сравнению с другими ? [ править ]
Вы можете использовать только те инструменты, которые уже есть на вашем компьютере, без необходимости загружать дополнительное программное обеспечение. JavaScript использует только компьютер пользователя и не использует ресурсы сервера. Иными словами, если программа JavaScript требует произведения расчетов, то компьютер пользователя это сделает.
1. Возможность создавать клиентские части веб-приложений
JavaScript не привязан к операционной системе, работая там, где запускается браузер, а практически любой современный браузер имеет его поддержку. К этому языку имеет самое непосредственное отношение модное слово AJAX: именно JavaScipt позволяет делать быстро реагирующие интерфейсы.
2. Возможность исследования веб-приложений
JavaScript позволяет изучать работу веб-приложений, взаимодействовать с ними, модифицировать их поведение в браузере (с помощью системы расширений Firefox или скриптов Greasemonkey), обеспечивать их качество (с помощью Selenium, TestComplete и ряда других программных средств).
3. Применимость знаний при программировании на других языках программирования
Согласно Николасу Закасу объектная модель документа — часть JavaScript. А это самый распространённый способ обработки XML-документов. Помимо того, что методы, которые используются для изменения веб-страницы, вполне пригодны для работы с векторной графикой (SVG), математическими формулами (MathML), они ещё и в Java, Python, Ruby, PHP и многих других языках программирования широко используются для работы с XML.
Объекты в JavaScript устроены красиво и просто. В отличие от других популярных языков, в нём нет ни классов, ни конструкторов, ни модификаторов доступа к полям и методам, ни множества других вещей как отдельных сущностей. Однако эмулируются все эти вещи в языке на ура. Изучение JavaScript быстро приводит к пониманию действительно важных вещей.
Язык очень востребован в сфере веб-технологий, спрос на JavaScript-программистов (хотя желательно и верстальщики должны его знать) есть и он растёт.
Ограничения языка и сложности разработки [ править ]
- Реализация JavaScript в разных браузерах отличается. Код, работающий в IE может оказаться нерабочим в FF, и наоборот.
- Необычная реализации ООП (прототип-ориентированный подход).
Урок 1: Hello, World! [ править ]
Откройте текстовый редактор и создайте веб-страницу index.html. Скопируйте в неё следующий код:
Как вы можете видеть, JavaScript добавляется непосредственно в HTML с помощью тега <script>. Тег <script type=»text/javascript»> сообщает браузеру, что всё, что находится между этим тегом и конечным тегом </script> является скриптом, а атрибут type=»text/javascript» указывает, что скрипт написан на JavaScript. Аналогичным образом для VBScript вы можете использовать атрибут type=»text/vbscript». Если не указывать атрибут type, то по умолчанию используется «text/javascript».
Метод document.write() является стандартным способом для отображения текста в окне браузера. Пункт «document» ссылается на страницу HTML в целом (объект Document); далее следует исполняемая команда для объекта документа «write()«. В этом случае, вы указали интерпретатору написать классическое «Hello World» на экран.
Урок 2: инструменты разработчика [ править ]
Обязательно нужен хороший редактор. Он должен иметь:
- Подсветку синтаксиса
- Автодополнение
- Фолдинг (возможность скрыть-раскрыть блок кода)
IDE
Мощные редакторы, позволяют работать с проектом, включая автодополнение по файлам и т.п.
- Intellij WebStorm
- Microsoft Visual Studio
- Komodo IDE
- и др.
- Eclipse и на его основе Aptana.
- Visual Studio Code
- NetBeans
- Komodo Edit
- и др.
«Легкие» редакторы
Такие редакторы не такие мощные, как IDE, но они быстрые и простые.
- TextMate (Mac, платный)
- SciTe простой, легкий и очень быстрый (Windows, бесплатный).
- Notepad++ (Windows, бесплатный).
- Sublime Text 2 (кросс-платформенный, неограниченный бесплатный триал).
- Vim, Emacs.
Урок 3: переменные, стандартные типы данных [ править ]
Неотъемлемой частью любого языка программирования являются переменные в JavaScript они создаются простым ключевым словом var, процесс когда переменной дают свойство. Также в JavaScript как и в других языках программирования существуют типы данных. Стандартные из них:
- Число (Number) — просто любое числовое значение:
- Строка (String), любое строчное значение.
- Логический (Boolean), т. е. истина («true») и ложь («false»)
Урок 4: объект Window [ править ]
Одним из самых ключевых понятий JavaScript являются объекты или если выражаться терминами ООП (Объектно-ориентированное программирование) классы. Итак, каждый объект отвечает за какую-то опцию браузера, вместе они образуют BOM (Browser Object Model, т. е. Объектная модель браузера). Глобальный объект window, о котором мы и будем говорить, отвечает за основные опции браузера такие как, модальные окошки или всплывающие поля запроса «Да» и «Отмена». Его «методы»
Урок 5: объект Location [ править ]
Урок 6: объект History [ править ]
Урок 7: DOM — document object model [ править ]
Смотри также [ править ]
Учебные проекты [ править ]
-
— скрипт на JavaScript, реализующий функциональность игры Пятнашки.
Ссылки [ править ]
При создании этой страницы использовались материалы страницы en:Basic JavaScript согласно лицензии Creative Commons Attribution/Share-Alike 3.0
Введение в JavaScript

Сегодняшний мир веб-сайтов трудно представить без языка JavaScript. JavaScript — это то, что делает живыми веб-страницы, которые мы каждый день просматриваем в своем веб-браузере.
JavaScript был создан в 1995 году в компании Netscape разработчиком Брендоном Айком (Brendon Eich) в качестве языка сценариев в браузере Netscape Navigator 2. Первоначально язык назывался LiveScript, но на волне популярности в тот момент другого языка Java LiveScript был переименован в JavaScript. Однако данный момент до сих пор иногда приводит к некоторой путанице: некоторые начинающие разработчики считают, что Java и JavaScript чуть ли не один и тот же язык. Нет, это абсолютно два разных языка, и они связаны только по названию.
Первоначально JavaScript обладал довольно небольшими возможностями. Его цель состояла лишь в том, чтобы добавить немного поведения на веб-страницу. Например, обработать нажатие кнопок на веб-странице, произвести какие-нибудь другие действия, связанные прежде всего с элементами управления.
Однако развитие веб-среды, появление HTML5 и технологии Node.js открыло перед JavaScript гораздо большие горизонты. Сейчас JavaScript продолжает использоваться для создания веб-сайтов, только теперь он предоставляет гораздо больше возможностей.
Также он применяется как язык серверной стороны. То есть если раньше JavaScript применялся только на веб-странице, а на стороне сервера нам надо было использовать такие технологии, как PHP, ASP.NET, Ruby, Java, то сейчас благодаря Node.js мы можем обрабатывать все запросы к серверу также с помощью JavaScript.
В последнее время переживает бум сфера мобильной разработки. И JavaScript опять же не остается в стороне: увеличение мощности устройств и повсеместное распространение стандарта HTML5 привело к тому, что для создания приложений для смартфонов, планшетов и настольных компьютеров мы также можем использовать JavaScript. То есть JavaScript уже перешагнул границы веб-браузера, которые ему были очерчены при его создании.
И что вообще раньше казалось фантастикой, но сегодня стало реальностью — javascript может использоваться для набирающего популярность направления разработки для IoT(Internet of Things или Интернет вещей). То есть JavaScript можно использовать для программирования самых различных «умных» устройств, которые взаимодействуют с интернетом.
Таким образом, вы можете встретить применение JavaScript практически повсюду. Сегодня это действительно один из самых популярных языков программирования, и его популярность еще будет расти.
С самого начала существовало несколько веб-браузеров (Netscape, Internet Explorer), которые предоставляли различные реализации языка. И чтобы свести различные реализации к общему стержню и стандартизировать язык под руководством организации ECMA был разработан стандарт ECMAScript. В принципе сами термины JavaScript и ECMAScript являются во многом взаимозаменяемыми и относятся к одному и тому же языку.
К настоящему времени ECMA было разработано несколько стандартов языка, которые отражают его развитие. В последнее время почти каждый год выходит новый стандарт. На данный момент последним принятым стандартом является ECMAScript 2021, который был одобрен 22 июня 2021 года. Однако реализация стандартов в браузерах занимает довольно продолжительное время. Одни браузеры быстрее реализуют новые стандарты, другие медленнее. Кроме того, есть большой пласт старых версий браузеров, которыми простые пользователи продолжают пользоваться и которые естественно могут не поддерживать нововведения последних стандартов. И это надо учитывать при разработке программ на JavaScript. В данном же руководстве будут рассматриваться в основном те возможности JavaScript, которые поддерживаются всеми наиболее распространенными современными браузерами.
JavaScript является интерпретируемым языком. Это значит, что код на языке JavaScript выполняется с помощью интерпретатора. Интерпретатор получает инструкции языка JavaScript, которые определены на веб-странице, выполняет их (или интерпретирует).
Средства разработки
Для разработки на JavaScript нам потребуется текстовый редактор для написания кода и веб-браузер для его тестирования. В качестве текстового редактора я советую использовать такую программу как Visual Studio Code. Он бесплатен, имеет много возможностей и может быть установлен как на Windows, так и на Linux и MacOS. Хотя этот может быть любой другой текстовый редактор.
Также существуют различные среды разработки, которые поддерживают JavaScript и облегчают разработку на этом языке, например, Visual Studio, WebStorm, Netbeans и так далее. При желании можно использовать также эти среды разработки.