我想序列化一个包含窗口的窗口对象,因此如果通过反序列化并重新设置其属性来刷新php页面,则在内存中保持窗口打开。可能吗?
例如:
object = window.open("test.html",..)
使用场景:
当一个窗口打开时,它的引用是在创建它的父窗口中进行的,但是当刷新该父窗口时,对子窗口的引用将丢失。因此,我想序列化该窗口对象并保留它以防刷新窗口。对此的任何其他解决方案也是受欢迎的。
答案 0 :(得分:1)
不,你不能序列化一个窗口对象。这是因为窗口对象具有循环引用。对象的每个子节点都有对其父节点的引用。 JSON.stringify()
不支持循环引用。并且不要试图将引用保留在全局变量中。全局变量是全局对象的属性。此对象的属性是JavaScript程序的全局变量。声明全局JavaScript变量时,实际上要做的是定义全局对象的属性。
有关详细信息,请查看this link。