Ответ 1
Переменные в глобальной области автоматически экспонируются как свойства DOM их содержащего объект window
.
Это означает, что
var foo = 'bar';
аналогично
window.foo = 'bar';
Это означает, что вы можете прочитать глобальную область любого объекта window
, на который вы можете получить ссылку. Здесь мы также можем подразумевать, что использование window
неявно. Даже когда вы явно не вводите "окно", оно все равно.
И поскольку сами кадры также автоматически отображаются как свойства DOM текущего объекта window
, это означает, что вы также можете получить доступ к любому другому объекту window
.
Свойство parent
объектов window
содержит ссылку на объект window
этого родителя окна (если таковой имеется). Поскольку iframe, безусловно, имеет родительское окно, тогда все эти вещи, которые я только что напечатал, сводятся к этому
// set the global variable 'foo' in the parent global scope
parent.foo = 'bar';