4 Обзор
снение:
«Конструктор JavaScript» должен быть более правильно написан как «конструктор javascript», чтобы подчеркнуть, что рассматриваемые конструкторы являются не только родными конструкторами языка JavaScript, такими как Object, Array, Function и т. Д., Но и другими, внешними по отношению к определению языка JavaScript. но свойственный браузеру, такому какXMLHttpRequest
, Слово «JavaScript» предназначено для обозначения того, что эти конструкторы выражены и доступны с помощью JavaScript.
некоторые ссылки:
Использование функции конструктора вРабота с объектами - MDN Docs"constructor
Определяет функцию, которая создает прототип объекта "
вОбъект - MDN Docsпример: "... вызывая
Worker()
конструктор ... »Работник - MDN DocsКаковы предопределенные примитивные конструкторы?Где документированы такие конструкторы, как `new Image ()` и `new Option ()`?Где находится документация для всех конструкторов HTML-элементов Javascript?
Риторически, есть ссылки на конструкторфункции но НЕ конструкторобъекты!
(Фактически, это потому, что объекты являются функциями, а функции являются объектами!
Почему в JavaScript функция считается и конструктором, и объектом?
Точнее говоря, объекты, или это obj-eggs ?, ARE, игнорирующие буквальные экземпляры, экземпляры функций и функций, являются объектными экземплярами функций. Можно утверждать, что функции являются основополагающими для существования объектов, о чем свидетельствует тот факт,
7.функции
предшествует
8.Работа с объектами
в документах MDNРуководство по JavaScript, В этом разделе 8 «Я возражаю!» Приводятся подробности, необходимые для создания объектов с использованием конструкторов и экземпляров функций!)
Почему конструкторы, которые взаимодействуют с DOM, не функционируют?
javascript:
alert([
"using browser environment: \n"+window.navigator.userAgent,
Option, Image, Audio,
Storage, XMLHttpRequest, Worker, FileReader,
] . join("\n\n"));
показывает нам:
используя среду браузера:
Mozilla / 5.0 (X11; U; Linux i686; en-US; rv: 1.9.2.3) Gecko / 20100423 Ubuntu / 10.04 (lucid) Firefox / 3.6.3
[Опция объекта]
[изображение объекта]
[объект Аудио]
[Хранение объекта]
[объект XMLHttpRequest]
[работник объекта]
[объект FileReader]
но ...
javascript:
alert([
XPCNativeWrapper,
].join("\n\n"));
(который производит
function XPCNativeWrapper () {[собственный код]}
)
и язык JavaScriptконструкторы Есть функции.
javascript:
alert([
"using browser environment: \n"+window.navigator.userAgent,
Array, Boolean, Date, Function,
Number, Object, RegExp, String,
Error, Iterator,
].join("\n\n"));
дает нам:
используя среду браузера:
Mozilla / 5.0 (X11; U; Linux i686; en-US; rv: 1.9.2.3) Gecko / 20100423 Ubuntu / 10.04 (lucid) Firefox / 3.6.3
function Array () {[собственный код]}
function Boolean () {[собственный код]}
function Date () {[собственный код]}
function Function () {[собственный код]}
номер функции () {[собственный код]}
function Object () {[собственный код]}
функция RegExp () {[собственный код]}
function String () {[собственный код]}
function Error () {[собственный код]}
function Iterator () {[собственный код]}