首頁  >  問答  >  主體

為什麼這麼多 JavaScript 腳本要附加隨機數字給事物?碰撞?

我最近一直在學習 JavaScript,並且看到了許多使用 Math.rand() 附加到連結的範例(Face book.com、可讀性書籤)。

這解決了什麼問題? Readability 小書籤中的範例參數:

_readability_script.src='http://lab.arc90.com/....script.js?x='+(Math.random());

JavaScript 中是否有衝突或需要解決的問題?

P粉729518806P粉729518806349 天前829

全部回覆(2)我來回復

  • P粉378264633

    P粉3782646332023-11-05 15:56:01

    重點是避免瀏覽器快取這些資源。

    回覆
    0
  • P粉144705065

    P粉1447050652023-11-05 11:47:29

    正如魯本斯所說,這通常是用來防止快取的技巧。瀏覽器通常會非常積極地快取 JavaScript 和 CSS,這可以節省您的頻寬,但在更改腳本時也可能會導致部署問題。

    這個想法是瀏覽器會認為位於http://www.example.com/something.js?foo 的資源與http://www.example.com 不同/something .js?bar,因此不會使用本機快取來檢索資源。

    可能更常見的模式是附加一個遞增值,只要資源需要更改,該值就可以更改。透過這種方式,您可以透過用戶端快取處理重複請求而受益,但在部署新版本時,您可以強制瀏覽器取得新版本。

    就我個人而言,我喜歡將文件的最後修改時間作為 Unix 時間戳附加,這樣我就不必在每次更改文件時四處尋找和修改版本號。

    回覆
    0
  • 取消回覆