2015-10-21 280 views
1

爲什麼谷歌Analytics跟蹤精縮到:谷歌分析爲什麼縮小爲:`1 * new Date()`?

i[r].l=1*new Date(); 
// instead of: which saves one byte 
i[r].l=+new Date(); 
// or even: which saves 3 bytes 
i[r].l=+new Date; 

任何理由不使用更高版本?

全碼:

(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 
})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 
+1

因爲在實現它之前他們沒有將它發佈到codegolf上?這可能只是它們的閉包編譯器的結果。 – Tschallacka

+2

可能因爲原始代碼只是'1 * new Date()',並且沒有從'1 *'到'+'的縮小。 – Bergi

回答

3

沒有,沒有道理可言。實際上,Google Analytics推薦在其alternative async tracking snippet中使用版本3。

對你的問題最有可能的答案是,一個人負責編寫原始代碼片段,而一個人沒有完全獲得100%最優化的縮小版本。實際上,您也可以省略a.async=1部分,因爲所有動態注入的腳本默認都是異步的。

如果要將其更改爲保存3個字節,請繼續。今天沒有使用的瀏覽器會在您的#3語法中失敗。

相關問題