Добрый день. Я сейчас прохожу курс повышения квалификации - "Профессиональное веб-программирование". Мне нужно получить диплом по этому курсу. Я так полагаю нужно его оплатить чтобы получить диплом о повышении квалификации. Как мне оплатить этот курс?
|
JavaScript. Объекты
Мы не ставим себе целью вместить базовый курс объектно-ориентированного программирования в рамки одной лишь только лекции. Настоящая лекция является своего рода справочником основ работы с объектами в JavaScript и полезна в большей степени будет тем, кто владеет базовыми знаниями.
Понятие объекта
Одной из первых фраз, которую вспоминают при обсуждении объектно-ориентированного языка программирования, является "Всё является объектом". Т.е. любая сущность в адресном пространстве является объектом.
В Javascript все объекты выстроены в строгой иерархии, в вершине которой стоит объект Window.
Итак, первый и самый главный вопрос – как создать объект?
Существует несколько способов создания простого объекта и установки его свойств:
var newObj = new Object(); newObj.test = "test string"; newObj.showMsg = function () { alert(Alert Message); }
Также может быть использована сокращенная форма записи:
var newObj = { test: "test string", showMsg: function () { alert(Alert Message); } }
В JavaScript нет понятия класса как такового, и в отличие от классических объектно-ориентированных языков, происходит наследование не классов, а объектов - одни объекты порождают другие.
Встроенные объекты
Встроенные объекты JavaScript доступны в любом месте скрипта и в любой ситуации. К их числу относятся:
Объектная модель документа
Объектная модель документа не является частью языка JavaScript. Строго говоря, DOM ( Document Object Model ) – это интерфейс прикладного программирования для представления документа (например, документа HTML , а также иных) и обеспечения доступа к его элементам и интерактивного изменения их свойств. DOM предоставляет механизмы для изменения самой структуры документа (добавление и удаление элементов, изменение их содержимого).
Для понимания объектной модели документов важно осознавать, что логическая древовидная структура представления документа никак не связана с реализацией этой модели именно в виде древовидной структуры. Рекомендации не регламентируют способ реализации модели, она может быть произвольной. Основное - это принцип структурного изоморфизма: две реализации объектной модели документа, используемые для представления одного и того же документа, создадут одну и ту же структурную модель с одинаковыми объектами и их связями.
Другой важный аспект модели DOM - она оперирует с объектами в полном соответствии с традиционными объектно-ориентированными технологиями: все элементы документа представляются в виде объектов. В узлах структурной логической схемы находятся объекты, а не данные, со всеми присущими объектам свойствами и поведением.
Объектная модель документов, таким образом, как объектная модель, определяет:
- интерфейсы и объекты, используемые для представления документа и манипулирования с ним;
- семантику (смысл) этих интерфейсов и объектов, включая и поведение, и атрибуты;
- "родственные" связи и взаимодействие между этими интерфейсами и объектами.
Объектная модель документа представляется узлами (node), расположенными в виде иерархической структуры дерева. Концепция объектной модели не привязана ни к какому конкретному представлению документа (HTML, XML, SGML). Она всего лишь описывает логическую организацию документа. Ее реализация в конкретной системе представления документов ставит в соответствие узлам реальные элементы. В объектной модели документа, реализованной для HTML, в узлах могут находиться любые элементы HTML или текст, называемые узловыми элементами.
Объекты, предоставляемые Web-обозревателем, делятся на две группы:
- Объекты, представляющие Web-страницу и элементы, созданные с помощью разных тегов (абзац, заголовок, таблица, изображение и др.);
- Отдельный элемент Web-страницы, независимо от тега, с помощью которого он создан, представляется объектом HTMLElement. На этом объекте основаны другие объекты, представляющие элементы Web-страницы, которые созданы на основе определенных тегов. Так, абзац представляется объектом HTMLParagraphElement, изображение — объектом HTMLImageElement, гиперссылка — объектом HTMLLinkElement, а таблица — объектом HTMLTableElement.
Объект HTMLDocument является корнем иерархии HTML, в котором хранится все содержимое. Помимо предоставления доступа к иерархии он также предлагает несколько методов, которые позволяют выбирать из документа определенные наборы данных. Свойства и методы объекта HTMLDocument перечислены в табл. 13.2 :