假设我有一个 JavaScript SPA,它将一个文件 X_version1.js 加载到浏览器中,并且该文件将被运行。是什么阻止 X_version1.js 意外调用 X_version0.js 中先前缓存在浏览器中的函数?除非显式调用,否则缓存的 .js 脚本不会被调用,在什么情况下会发生这种情况?
这似乎并不牵强,因为有时我们使用 jQuery 的缓存版本,或者其他什么,它可能不在最近的服务器请求中加载的 .js 文件中......
最佳答案
缓存不会发生在方法级别,而是发生在文件级别。
所以如果你有
<script src="X_version0.js"></script>
然后浏览器会显示“啊我以前下载过这个!我将返回缓存的版本。”但是当您将来源更改为:
<script src="X_version1.js"></script>
浏览器之前没有见过该文件,因此会去获取它。此时页面中没有任何内容显示加载 version0,因此浏览器不会
关于javascript - 浏览器缓存 - 版本控制文件 - 但如果浏览器使用旧版本怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32006596/