我想知道javascript对象是否跨页面?看起来像一些浏览器,有些不。什么是标准行为?
谢谢, EBE
答案 0 :(得分:9)
不,更改页面时所有对象都将丢失。
但是,您可以使用window.name
进行有趣的黑客攻击。只要当前窗口打开,window.name
的值就会保留,因此您可以暂时将数据存储在其中(并从页面到页面访问它)。但是,这些数据可以从使用该窗口的任何页面访问(和覆盖),因此它不是安全或可靠的存储。
有关详细信息,请参阅http://www.thomasfrank.se/sessionvars.html。
答案 1 :(得分:2)
从未见过这样的行为。据我所知 - 没有浏览器可以做到这一点。
答案 2 :(得分:2)
浏览器会缓存脚本文件,但JavaScript对象的范围仅限于加载脚本文件的页面,因此,如果导航到使用相同脚本的其他页面,则会新创建对象但不一定具有与上一页相同的状态。
答案 3 :(得分:-2)
某些Web浏览器(如Safari)会缓存已编译的javascript代码。但是状态不应该在任何浏览器的页面加载中保持不变。