我有一个客户端javascript项目,由于某种原因,我尝试创建的每个数组都是一个带有某种“干净”参数的对象。有没有人见过这个,碰巧知道为什么会发生这种情况?
var x = [];
console.log(x);
[clean: function]
答案 0 :(得分:0)
罪魁祸首是这个Wanelo Javascript文件:
//cdn-saveit.wanelo.com/bookmarklet/3/save.js
你不知道追踪是多么困难......
它向clean
添加了Array
函数,似乎从中删除了undefined
个元素。从缩小的JavaScript:
Array.prototype.clean = function() {
var t;
for(t=0; t < this.length;)
void 0 === this[t] && (this.splice(t,1), t--), t++;
return this;
}
可以这样使用:
var x = [undefined, 1, 2, undefined, 3];
console.log(x.clean());
// [ 1, 2, 3 ]