技术解析

js 全局变量,F5 刷新页面依旧保持上次值的?
0
2021-08-12 06:28:38
idczone


    
    
    



为何 js 全局变量,多次 F5 刷新页面后,name依旧保持上次的随机值. 能否在 https://developer.mozilla.org/ 这里找到对应解释


是因为 Math.random 的返回不变的原因?

原因是 window.name 是一开始就有的。https://developer.mozilla.org/en-US/docs/Web/API/Window/name 你把变量换个名字。

window.name 应该是一个 `tab` 的 metadata

回复太随意了,Math.random 没问题,浏览器有问题。在 Mac 上,用 Chrome 每次都一样,用 Safari 会不一样。

window.name 的值在不关闭窗口的情况下 一般都会保留
有些隐私模式浏览器可能会对这个值清空

确实换个名字就可以了

我遇到过,不要用 name

试了以下 safari 刷新也是一样的

Safari 和 Chrome 的表现一致,都是对 name 这个特殊的变量值不变,不知道你的 safari 是什么版本

用的楼主的代码,开了调试模式,用 safari 尝试了几次刷新,开着 Console 刷新,看打印。console.log 会不一样。我没用 F5 刷新+页面显示,可能不太严谨。
https://imgur.com/FtdZift
Safari 版本号 Version 12.1.1 (14607.2.6.1.1)

F5 刷新是除了 webpack 热更新最浅的刷新了,很多数据都会缓存的

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服