我注意到在某些情况下,当导入jQuery
时,它会添加为已定义对象或数组的最后一个元素 - inArray
...这完全破坏了for ... in
循环,因为它将愚蠢的函数计为元素。
示例:
console.log(v);
VM19135:2 Uncaught ReferenceError: v is not defined
var v = [];
console.log(v);
VM19222:2 [inArray: function]
到底是什么????如何避免?
以下是提供这些结果的示例网站: http://kobieta.interia.pl
只需输入控制台,然后输入:
var v = []; 的console.log(V);
答案 0 :(得分:1)
遇到此问题时,您需要使用Object.prototype.hasOwnProperty()。这是因为JavaScript使用原型的方式。
这很烦人但你需要运行你的for-in循环:
var v = [];
for (var name in v) {
if (v.hasOwnProperty(name)) {
console.log(v[name]);
}
}