В чем разница между JavaScript и DOM? - PullRequest
12 голосов
/ 28 апреля 2010

В чем разница между JavaScript и DOM? DOM связан с Firefox? Является ли DOM просто порядком исходных элементов HTML?

Ответы [ 4 ]

24 голосов
/ 28 апреля 2010

DOM означает объектная модель документа и, как можно догадаться из названия, представляет структуру документа HTML / XML независимо от платформы / браузера. DOM также предоставляет API для управления DOM с такими функциями, как getElementsByTagName и createElement.

JavaScript - это язык программирования, который могут выполнять веб-браузеры. JavaScript может взаимодействовать с DOM с помощью сценариев DOM .

Изменить, чтобы ответить на ваш вопрос в комментарии : Например, браузер загружает HTML вместе со всеми ссылочными JS и CSS (и изображениями, Flash и т. Д.). Браузер создает DOM из HTML и отображает его, используя правила, указанные в CSS. JS может манипулировать DOM, когда страница загружается, когда пользователь что-то делает или когда происходит любое другое событие . При изменении DOM браузер обновляет то, что отображается.

10 голосов
/ 28 апреля 2010

Как уже говорили другие, DOM ( D ocument O bject M odel) по сути является API, который используется для манипулирования HTML (или XML) document - обычно с использованием JavaScript, поскольку это язык, который мы используем в браузере, но не всегда, поскольку существуют DOM-подобные API для управления этими документами на других языках на стороне сервера или на рабочем столе, для пример: http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-summary.html.

JavaScript - это просто язык программирования. Это де-факто стандартный язык сценариев для большинства (если не для всех) веб-браузеров, и поэтому на практике большую часть времени, когда вы пишете сценарии манипулирования DOM для запуска на стороне клиента, вы работаете с и DOM, и JavaScript одновременно.

Однако, это не должно быть так. Кто-то может написать веб-браузер (или плагин для веб-браузера), который позволяет программистам писать свои сценарии манипулирования DOM на Python, Ruby, C, Scheme и т. Д. (На самом деле JavaScript начал жизнь в Netscape как схема).

Кроме того, существуют интерпретаторы JavaScript (и даже компиляторы), которые полностью работают вне веб-браузеров. На самом деле, если вы хотите понять, что является основным языком JavaScript, вы можете попробовать немного написать сценарии, используя Mozilla's Rhino: http://www.mozilla.org/rhino/. Там нет DOM по умолчанию, нет оконного объекта, ничего не связано с браузером по умолчанию (хотя вы можете импортировать некоторые пакеты Java DOM).

Я бы также рекомендовал прочитать старую спецификацию JavaScript 1.5 в MDC (http://developer.mozilla.org/en/Core_JavaScript_1.5_Guide) и некоторые их материалы в DOM (http://developer.mozilla.org/en/DOM).

2 голосов
/ 28 апреля 2010

MDC DOM

Объектная модель документа (DOM) является API для документов HTML и XML. Это обеспечивает структурное представление документа, что позволяет вам изменить его содержание и визуальный презентация. По сути, это соединяет веб-страницы для сценариев или программирования языки

JavaScript - это язык программирования, который позволит вам работать с объектами DOM

надеюсь, что это прояснит

2 голосов
/ 28 апреля 2010

Проще говоря, JavaScript позволяет управлять объектной моделью DOM AKA Document, которая управляет сценариями на стороне клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...