Объекты WindowProxy и Window?

Может кто-нибудь объяснить, почему действительно существует объект WindowProxy? Я понимаю, что реальный объект Window делает все через этот объект, но не может понять цель.

Ответ 1

Эта конструкция предназначена для поддержки контекстной модели просмотра html5. По сути, каждый script может иметь централизованную точку доступа для своего основного активного окна, чтобы функционально отделить временные ссылки в отдельных внутренних окнах, историю документов, кеш и необходимость отслеживать каждый из них зависящим от контекста образом.

Два изображения ниже иллюстрируют концепцию:

windowProxy refers to the outer 'Browser window' here.

На приведенной выше диаграмме Окно браузера сглажено ссылкой windowProxy в каждом из содержимого внутреннего окна.

windowProxy refers to the top-level 'Window' here.

На приведенной выше диаграмме верхний уровень Окно сглаживается ссылкой windowProxy в каждом внутреннем окне и содержимом iframe.