Библиотеки Java Script
Глава I. Интерактивные веб-страницы
Формы, элементы форм
- Форма на Web-странице представляет собой лишь набор полей, которые можно также рассматривать как элементы управления. Посетитель в процессе работы с Web-страницей заполняет форму, после чего отправляет ее. Далее поступившие данные обычно передают специальной программе, предназначенной для ее обработки.
- Форма — это блочный элемент, описываемый парным тегом .Теги, задающие поля формы, можно использовать только внутри этого элемента.
Пример.1. Фрагмент программы для ввода пароля.
введите пароль:
Элемент . Оператор предназначен для ввода элементов управления в форму. В качестве элементов управления могут использоваться: поля ввода текстовой информации, поля ввода пароля, флажки, переключатели, кнопки, а также органы управления для передачи локального файла через навигатор в удаленный сервер WWW.
Синтаксис: одиночный оператор. Закрывающий оператор отсутствует.
Пример 2. Положим, что мы проводим социологический опрос среди студентов.
Форма, которая бы поставляла данные на сервер и там обрабатывалась, могла бы иметь вид:
Приведенной форме соответствует HTML-документ:
Форма_экзамен
Какую оценку вы получили
отлично
хорошо
удовлетворительно
неудовлетворительно
Экзамен по какой дисциплине вы сдавали?
Информатика
Мат_анализ
Иностранный_язык
Управление_персоналом
Организация_производства
(другой)
другой:
Перечислите, пожалуйста, экзаменационные вопросы:
Ваши данные для контактов:
Соответствует ли, по вашему мнению, оценка вашим знаниям
Глава II. Язык java script
JavaScript
Класс языка:
мультипарадигмальный : объектно-ориентированное ( прототипное ), обобщённое , функциональное , императивное , аспектно -ориентированное ,
Тип исполнения:
событийно-ориентированное программирование
интерпретация, трансляция в байт-код Java, JIT в машинные коды
Появился в:
Автор:
Расширение файлов:
.js
Выпуск :
ECMAScript 2016 (14 июня 2016)
Тестовая версия:
(27 июня 2010)
Система типов :
Основные реализации:
SpiderMonkey , Rhino , KJS (JavaScript) ( англ . ), JavaScriptCore , V8
Испытал влияние:
Lua , Self , Си , Scheme , Perl , Python , Java , AWK , HyperTalk
Повлиял на:
Objective -J , Dart , TypeScript
Сайт:
JavaScript ( /ˈ dʒɑːvɑ ːˌ skrɪpt / ; аббр. JS /ˈ dʒeɪ.ɛs ./ ) — мультипарадигменный язык программирования .
Поддерживает объектно - ориентированный , императивный и функциональный стили. Является реализацией языка ECMAScript (стандарт ECMA-262).
JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений . Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам .
История языка java script
В 1992 году компания Nombas (впоследствии приобретённая Openwave ) начала разработку встраиваемого скриптового языка Cmm (Си-минус-минус), который, по замыслу разработчиков, должен был стать достаточно мощным, чтобы заменить макросы , сохраняя при этом схожесть с Си, чтобы разработчикам не составляло труда изучить его.
Главным отличием от Си была работа с памятью. В новом языке всё управление памятью осуществлялось автоматически: не было необходимости создавать буфера , объявлять переменные, осуществлять преобразование типов. В остальном языки сильно походили друг на друга: в частности, Cmm поддерживал стандартные функции и операторы Си. Cmm был переименован в ScriptEase , поскольку исходное название звучало слишком негативно, а упоминание в нём Си «отпугивало» людей. На основе этого языка был создан проприетарный продукт CEnvi . В конце ноября 1995 года Nombas разработала версию CEnvi , внедряемую в веб-страницы. Страницы, которые можно было изменять с помощью скриптового языка, получили название Espresso Pages — они демонстрировали использование скриптового языка для создания игры, проверки пользовательского ввода в формы и создания анимации. Espresso Pages позиционировались как демоверсия , призванная помочь представить, что случится, если в браузер будет внедрён язык Cmm . Работали они только в 16-битовом Netscape Navigator под управлением Windows.
JavaScript
Перед Бренданом Эйхом , нанятым в компанию Netscape 4 апреля 1995 года , была поставлена задача внедрить язык программирования Scheme или что-то похожее в браузер Netscape. Поскольку требования были размыты, Эйха перевели в группу, ответственную за серверные продукты, где он проработал месяц, занимаясь улучшением протокола HTTP . В мае разработчик был переброшен обратно, в команду, занимающуюся клиентской частью (браузером), где он немедленно начал разрабатывать концепцию нового языка программирования. Менеджмент разработки браузера, включая Тома Пакина (Tom Paquin), Михаэля Тоя ( англ. ), Рика Шелла (Rick Schell), был убеждён, что Netscape должен поддерживать язык программирования, встраиваемый в HTML -код страницы.
Рисунок 3. Марк Андрессен
Рисунок 4. Билл Джой
Рисунок 5. Брендан Эйх
Структура языка JavaScript
Структурно JavaScript можно представить в виде объединения трёх чётко различимых друг от друга частей:
ядро (ECMAScript),
объектная модель браузера ( Browser Object Model или BOM ( en )),
объектная модель документа ( Document Object Model или DOM ).
Если рассматривать JavaScript в отличных от браузера окружениях, то объектная модель браузера и объектная модель документа могут не поддерживаться.
Объектную модель документа иногда рассматривают как отдельную от JavaScript сущность, что согласуется с определением DOM как независимого от языка интерфейса документа. В противоположность этому ряд авторов находят BOM и DOM тесно взаимосвязанными.
Область применения языка JavaScript
- Веб-приложения
- AJAX
- Comet
- Браузерные операционные системы
- Пример сеанса eyeOS
- Букмарклеты
- Пользовательские скрипты в браузере
- Серверные приложения
- Мобильные приложения
- Виджеты
- Прикладное программное обеспечение
- Манипуляция объектами приложений
- Офисные приложения
- Microsoft Office
- OpenOffice.org
Глава III. Основные библиотеки JavaScript
Библиотеки JavaScript
Для обеспечения высокого уровня абстракции и достижения приемлемой степени кросс- браузерности при разработке веб-приложений используются библиотеки JavaScript. Они представляют собой набор многократно используемых объектов и функций.
Среди известных JavaScript библиотек можно отметить Ember . js , Adobe Spry , AngularJS , Dojo Toolkit, Extjs , jQuery , Mootools , Prototype , Qooxdoo ( англ. ), Underscoe .
Взаимодействие
В некоторых языках программирования существуют средства поддержки взаимодействия с JavaScript-кодом.
Для PHP имеется пакет HTML_Javascript, предоставляющий интерфейс создания простых JavaScript-программ.
Соответствующий пакет для Tcl называется ::javascript. Он предоставляет команды генерации кода HTML и JavaScript.
Пакет для Perl Data::JavaScript позволяет переносить структуры данных Perl в JavaScript-код.
Безопасность
JavaScript позволяет потенциальным авторам вредоносного кода запускать его на любом компьютере сети: для этого достаточно открыть на нём веб-страницу. Это обуславливает наличие двух принципиальных ограничений:
JavaScript-программы выполняются в песочнице , в которой они могут выполнять только ограниченный круг действий, а не задачи программирования общего назначения (например, создание файлов, работа с сокетами ),
для JavaScript-кода применяется политика общего происхождения , в соответствии с которой скрипт, встроенный в страницу, не может получить доступ к ряду свойств объектов другой страницы (в частности, к большинству свойств объекта document) при отличии в протоколе , хосте и номере порта этих страниц.
Помимо этого, разработчики браузеров вносят дополнительные ограничения в ответ на имеющие место злоупотребления. Так появился, в частности, запрет на открытие окна, размер одной стороны которого меньше ста пикселей .