Javascript сериализует объект окна - PullRequest
2 голосов
/ 26 июля 2011

Я хотел бы сериализовать объект окна, который содержит окно, таким образом, чтобы сохранить в памяти окно открытым, если страница php обновляется путем десериализации его и установки его свойств обратно. Возможно ли это?

например:

object = window.open("test.html",..)

Сценарий использования:

Когда окно открыто, его ссылка делается в родительском окне, которое его создало, но когда обновляется это родительское окно, эта ссылка на дочернее окно теряется. Поэтому я хочу сериализовать этот объект окна и сохранить его на случай, если окно обновится. Любое другое решение для этого также приветствуется.

1 Ответ

1 голос
/ 19 сентября 2017

Нет, вы не можете сериализовать объект окна.И это потому, что объект окна имеет круговые ссылки.У каждого потомка объекта есть ссылка на его родителя.JSON.stringify() не поддерживает циклические ссылки.И не пытайтесь сохранить ссылку в глобальной переменной.Глобальные переменные - это свойства глобального объекта.Свойства этого объекта являются глобальными переменными программ JavaScript.Когда вы объявляете глобальную переменную JavaScript, вы фактически определяете свойство глобального объекта.

Для получения дополнительной информации, пожалуйста, проверьте эту ссылку .

...