Пояснение:
"Конструктор JavaScript" должен быть более правильно написан как "конструктор javascript", чтобы подчеркнуть, что рассматриваемые конструкторы являются не только родными конструкторами языка JavaScript, такими как Object, Array, Function и т. Д., Но такжедругие, внешние по отношению к определению языка JavaScript, но присущие браузеру, такие как XMLHttpRequest
. Слово «JavaScript» предназначено для обозначения того, что эти конструкторы выражаются и доступны с использованием JavaScript.
некоторые ссылки:
Риторически, есть ссылки на конструктор функции , но НЕ на конструктор objects !
(Фактически, это потому, что Objects являются функциями, а функции являются объектами!
Почему в 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]
[объект Worker]
[объект FileReader]
но ...
javascript:
alert([
XPCNativeWrapper,
].join("\n\n"));
(который производит
function XPCNativeWrapper () {[собственный код]}
)
и язык JavaScript конструкторы функции ARE.
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 (Ясный) Firefox / 3.6.3
function Array () {[собственный код]}
function Boolean () {[собственный код]}
function Date () {[собственный код]}
function Function () {[собственный код]}
номер функции () {[собственный код]}
function Object () {[собственный код]}
function RegExp() {[собственный код]}
function String () {[собственный код]}
function Error () {[собственный код]}
function Iterator (){[нативный код]}