84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
我最近一直在学习 JavaScript,并且看到了许多使用 Math.rand() 附加到链接的示例(Face book.com、可读性书签)。
这解决了什么问题? Readability 小书签中的示例参数:
_readability_script.src='http://lab.arc90.com/....script.js?x='+(Math.random());
JavaScript 中是否存在冲突或需要解决的问题?
要点是避免浏览器缓存这些资源。
正如鲁本斯所说,这通常是用来防止缓存的技巧。浏览器通常会非常积极地缓存 JavaScript 和 CSS,这可以节省您的带宽,但在更改脚本时也可能会导致部署问题。
这个想法是浏览器会认为位于 http://www.example.com/something.js?foo 的资源与 http://www.example.com 不同/something.js?bar,因此不会使用本地缓存来检索资源。
http://www.example.com/something.js?foo
http://www.example.com 不同/something.js?bar
可能更常见的模式是附加一个递增值,只要资源需要更改,该值就可以更改。通过这种方式,您可以通过客户端缓存处理重复请求而受益,但在部署新版本时,您可以强制浏览器获取新版本。
就我个人而言,我喜欢将文件的最后修改时间作为 Unix 时间戳附加,这样我就不必在每次更改文件时四处寻找和修改版本号。
要点是避免浏览器缓存这些资源。
正如鲁本斯所说,这通常是用来防止缓存的技巧。浏览器通常会非常积极地缓存 JavaScript 和 CSS,这可以节省您的带宽,但在更改脚本时也可能会导致部署问题。
这个想法是浏览器会认为位于
http://www.example.com/something.js?foo
的资源与http://www.example.com 不同/something.js?bar
,因此不会使用本地缓存来检索资源。可能更常见的模式是附加一个递增值,只要资源需要更改,该值就可以更改。通过这种方式,您可以通过客户端缓存处理重复请求而受益,但在部署新版本时,您可以强制浏览器获取新版本。
就我个人而言,我喜欢将文件的最后修改时间作为 Unix 时间戳附加,这样我就不必在每次更改文件时四处寻找和修改版本号。