javascript - Google Analytics 中的无用功能?
问题描述
我正在查看谷歌分析,我发现了这个功能(为了便于阅读,印刷得很漂亮):
ha = function(a) {
var b = [];
if (Array.prototype.indexOf) return a = b.indexOf(a), "number" ==
typeof a ? a : -1;
for (var c = 0; c < b.length; c++)
if (b[c] === a) return c;
return -1
},
这看起来像一个Array.prototype.indexOf
polyfill。麻烦的是,不是var b = this;
你所期望的,而是var b = [];
. 我找不到任何不会返回的情况-1
。
上次我在 Google Analytics 中发现类似的东西时,我刚刚犯了一个错误,它实际上是有效的。但是......我真的看不出我在哪里出错了。
这段代码有什么作用吗?还是它只是无条件返回-1
?
用于测试的沙箱:
var ha = function(a) {
var b = [];
if (Array.prototype.indexOf) return a = b.indexOf(a), "number" ==
typeof a ? a : -1;
for (var c = 0; c < b.length; c++)
if (b[c] === a) return c;
return -1
};
<input id="input" value="ha(5);" /><button onclick="var v=document.getElementById('input').value;console.log(v,eval(v));">Run</button>