Как XMLHttpRequest связан с объектом JS Window

Читая на XMLHttpRequest обнаружил, что он является членом глобального уровня высокого уровня JS window объект. Например:

if (window.XMLHttpRequest) { // Mozilla, Safari, IE7+ ...
    httpRequest = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE 6 and older
    httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}

Но я не могу подтвердить эту информацию где-либо еще? Я посмотрел здесь https://developer.mozilla.org/en-US/docs/Web/API/Window чтобы посмотреть, смогу ли я найти XMLHttpRequest объект, но не было никакого упоминания об этом. Я что-то пропустил? Просто хочу убедиться, что я понимаю правильное происхождение XMLHttpRequest и как это связано с глобальным window объект.

1 ответ

Решение

Смотрите определение WebIDL для XMLHttpRequest интерфейс:

[Constructor, Exposed=(Window,DedicatedWorker,SharedWorker)]
interface XMLHttpRequest : XMLHttpRequestEventTarget {
…
}

Так что требует XMLHttpRequest быть разоблаченным от Window а также из DedicatedWorker а также SharedWorker (в UA, которые фактически реализуют это).

Другие вопросы по тегам