Luk*_*ebe 5

这似乎是分析的分析。当analytics.js运行时,一个48位长数组(通过function $c它的原型管理)的单个位被设置。

var vd=new $c;
function J(a){
   vd.set(a)
}
Run Code Online (Sandbox Code Playgroud)

例如,如果使用链接器功能,则设置位 48;如果window.navigator.sendBeacon用于发送跟踪信标,则设置位 42;如果通过 传输,则设置位 40;如果必须将 a 前置到提取的路径XMLHttpRequest,则设置位 31 。/

var e=d.pathname||"";
"/" != e.charAt(0) && ( J(31), e = "/" + e );
Run Code Online (Sandbox Code Playgroud)

8 个 6 位组用于构建由 64 个字符 [Az-_] 组成的字符串,后跟波形符 ~ 并在参数下传输_u

$c.prototype.encode = function(){
  //Group 6 bits to use a 64 Char Alphabet
  for(var tempArr=[], i=0; i < this.bitsArray.length; i++) {
    this.bitsArray[i] && (tempArr[Math.floor(i/6)] = tempArr[n.floor(b/6)] ^ 1 << i%6);
  }

  //Translate from 6 Bit groups to Alphabet
  for(i=0;i<tempArr.length; i++){
    tempArr[i]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".charAt(tempArr[i]||0);
  }
  return tempArr.join("")+"~";
};
Run Code Online (Sandbox Code Playgroud)

如果我_u正确分析了参数,则将此字符串解码回各个位将允许 Google 识别在运行analytics.js时是否使用了相应的功能或达到了代码中的点