JavaScript

JavaScriptJavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам [9] .

JavaScript /strong>

Билл Джой

Помимо Брендана Эйха в разработке участвовали [17] сооснователь [19] Netscape Communications Марк Андрессен и сооснователь Sun Microsystems Билл Джой. чтобы успеть закончить работы над языком к релизу браузера, компании заключили соглашение о сотрудничестве в разработке [20]. Они ставили перед собой цель обеспечить «язык для склеивания» составляющих частей веб-ресурса: изображений, плагинов, Java-апплетов, который был бы удобен для веб-дизайнеров и программистов, не обладающих высокой квалификацией [17] .

Первоначально язык назывался Mocha [21] [22] [23]. затем он был переименован в LiveScript [23] [24] и предназначался как для программирования на стороне клиента, так и для программирования на стороне сервера (там он должен был называться LiveWire) [20]. На синтаксис оказали влияние языки Си и Java. и, поскольку Java в то время было модным словом [17] [20]. 4 декабря 1995 года LiveScript переименовали в JavaScript [25]. получив соответствующую лицензию у Sun. Анонс JavaScript со стороны представителей Netscape и Sun состоялся накануне выпуска второй бета-версии Netscape Navigator [17]. В нём декларируется, что 28 лидирующих ИТ-компаний выразили намерение использовать в своих будущих продуктах JavaScript как объектный скриптовый язык с открытым стандартом [26] .

В 1996 году компания Microsoft выпустила аналог языка JavaScript, названный JScript. Анонсирован этот язык был 18 июля 1996 года [27]. Первым браузером, поддерживающим эту реализацию, был Internet Explorer 3.0.

По инициативе компании Netscape [28] [29] была проведена стандартизация языка ассоциацией ECMA. Стандартизированная версия имеет название ECMAScript. описывается стандартом ECMA-262. Первой версии спецификации соответствовал JavaScript версии 1.1, а также языки JScript и ScriptEasy [12] [20] .

Популярность

В статье «The World’s Most Misunderstood Programming Language Has Become the World’s Most Popular Programming Language» [30] (  (рус.) «Самый неправильно понятый язык программирования в мире стал самым популярным в мире языком программирования») Дуглас Крокфорд утверждает, что лидирующую позицию JavaScript занял в связи с развитием AJAX. поскольку браузер стал превалирующей системой доставки приложений. Он также констатирует растущую популярность JavaScript, то, что этот язык встраивается в приложения, отмечает значимость языка.

По данным Black Duck Software ( англ. ) [32] в разработке открытого программного обеспечения доля использования JavaScript росла. 36 % проектов, релизы которых состоялись с августа 2008 по август 2009 гг. включают JavaScript, наиболее часто используемый язык программирования с быстрорастущей популярностью. 80 % открытого программного обеспечения использует Си, C++, Java, Shell и JavaScript. При этом JavaScript — единственный из этих языков, чья доля использования увеличилась (более чем на 2 процента, если считать в строках кода) [33] .

JavaScript является самым популярным языком программирования, используемым для разработки веб-приложений на стороне клиента ( англ. ) [34] [35] .

Возможности языка

JavaScript является объектно-ориентированным языком, но используемое в языке прототипирование [36] [37] обуславливает отличия в работе с объектами по сравнению с традиционными класс-ориентированными языками. Кроме того, JavaScript имеет ряд свойств, присущих функциональным языкам  — функции как объекты первого класса. объекты как списки, карринг. анонимные функции. замыкания [38]  — что придаёт языку дополнительную гибкость.

Несмотря на схожий с Си синтаксис, JavaScript по сравнению с языком Си имеет коренные отличия:

В языке отсутствуют такие полезные вещи [39]. как:

2]. которая бы отслеживала зависимости и автоматически устанавливала их.

Семантика и синтаксис

В JavaScript:

  • все идентификаторы регистрозависимы,
  • в названиях переменных можно использовать буквы. подчёркивание. символ доллара. арабские цифры ,
  • названия переменных не могут начинаться с цифры,
  • для оформления однострочных комментариев используются //. многострочные и внутристрочные комментарии начинаются с /* и заканчиваются */ .

Структура языка

Структурно JavaScript можно представить в виде объединения трёх чётко различимых друг от друга частей [41] [42] [43] [44] :

Если рассматривать JavaScript в отличных от браузера окружениях, то объектная модель браузера и объектная модель документа могут не поддерживаться [43] .

Объектную модель документа иногда рассматривают как отдельную от JavaScript сущность [45] [46] [Спецификация 3]. что согласуется с определением DOM как независимого от языка интерфейса документа [47] [

3]. В противоположность этому ряд авторов находят BOM и DOM тесно взаимосвязанными [48] [49] .

ECMAScript не является браузерным языком и в нём не определяются методы ввода и вывода информации [41]. Это, скорее, основа для построения скриптовых языков. Спецификация ECMAScript описывает типы данных, инструкции, ключевые и зарезервированные слова, операторы. объекты, регулярные выражения. не ограничивая авторов производных языков в расширении их новыми составляющими.

Объектная модель браузера — браузер-специфичная часть языка [43] [50]. являющаяся прослойкой между ядром и объектной моделью документа [51]. Основное предназначение объектной модели браузера — управление окнами браузера и обеспечение их взаимодействия. Каждое из окон браузера представляется объектом window. центральным объектом DOM. Объектная модель браузера на данный момент не стандартизирована [43] [52]. однако спецификация находится в разработке WHATWG [51] [Спецификация 4] и W3C [42] [Спецификация 5] .

Помимо управления окнами, в рамках объектной модели браузера, браузерами обычно обеспечивается поддержка следующих сущностей [51] [52] :

  • управление фреймами ,
  • поддержка задержки в исполнении кода и зацикливания с задержкой,
  • системные диалоги,
  • управление адресом открытой страницы,
  • управление информацией о браузере,
  • управление информацией о параметрах монитора ,
  • ограниченное управление историей просмотра страниц,
  • поддержка работы с HTTP cookie .

Объектная модель документа — интерфейс программирования приложений для HTML и XML — документов [53]. Согласно DOM, документ (например, веб-страница) может быть представлен в виде дерева объектов, обладающих рядом свойств, которые позволяют производить с ним различные манипуляции:

  • генерация и добавление узлов,
  • получение узлов,
  • изменение узлов,
  • изменение связей между узлами,
  • удаление узлов.

Встраивание в веб-страницы

Для добавления JavaScript-кода на страницу, можно использовать теги <script></script> [Спецификация 6]. которые рекомендуется, но не обязательно, помещать внутри контейнера <head>. Контейнеров <script> в одном документе может быть сколько угодно. Атрибут «type=’text/javascript’» указывать необязательно, данное значение используется по умолчанию [54] .

Скрипт, выводящий модальное окно с классической надписью «Hello, World!» внутри браузера:

Спецификация HTML описывает набор атрибутов, используемых для задания обработчиков событий [Спецификация 7]. Пример использования:

В приведённом примере при нажатии на ссылку функция confirm(‘Вы уверены?’); вызывает модальное окно с надписью «Вы уверены?», а return false; блокирует переход по ссылке. Разумеется, этот код будет работать только если в браузере есть и включена поддержка JavaScript, иначе переход по ссылке произойдёт без предупреждения.

Использование кода JavaScript в контексте разметки страницы расценивается в рамках ненавязчивого JavaScript как плохая практика. Аналогом (при условии снабжения ссылки идентификатором alertLink)

приведённого примера может являться, например, следующий фрагмент JavaScript:

Есть и третья возможность подключения JavaScript — написать скрипт в отдельном файле, а потом подключить его с помощью конструкции

Элемент script, широко используемый для подключения к странице JavaScript, имеет несколько атрибутов.

The media types,

  • application/javascript
  • application/ecmascript

which are also defined in this document, are intended for common use and should be used instead.

  • необязательный атрибут src. принимающий в качестве значения адрес к файлу со скриптом.
  • необязательный атрибут charset. используемый вместе с src для указания используемой кодировки внешнего файла.
  • необязательный атрибут defer указывает, что получение скрипта происходит асинхронно, но выполнение следует отложить до тех пор, пока страница не будет загружена целиком.
  • необязательный атрибут async указывает, что получение скрипта происходит асинхронно, а выполнение будет произведено сразу по завершению скачивания. Очерёдность выполнения скриптов не гарантируется.

При этом атрибут language ( language=»JavaScript» ), несмотря на его активное использование (в 2008 году этот атрибут был наиболее часто используемым у тега <script> [56] ), относится к не рекомендуемым (deprecated), отсутствует в DTD. поэтому считается некорректным [57] .

что такое джава скрипт

как включить скрипт в браузере

как накрутить сообщения в вк 2018 скрипт

Еще в тему http://iprowebber.ru/pro-dzhava-skript-javascript/. На главную: iprowebber.ru

This entry was posted in Как отключить джава скрипт and tagged , , . Bookmark the <a href="http://iprowebber.ru/javascript/" title="Permalink to JavaScript" rel="bookmark">permalink</a>.

Comments are closed.