javascript - jQuery 添加 inArray 作为最后一个数组/对象元素

标签 javascript jquery

我注意到,在某些情况下,当导入 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 = []; 控制台.log(v);

最佳答案

您需要使用Object.prototype.hasOwnProperty()当你遇到这个问题时。发生这种情况是因为 JavaScript 使用原型(prototype)的方式。

这很烦人,但您需要运行与此类似的 for-in 循环:

var v = [];
for (var name in v) {
  if (v.hasOwnProperty(name)) {
    console.log(v[name]);
  }
}

关于javascript - jQuery 添加 inArray 作为最后一个数组/对象元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27306089/

相关文章:

javascript - .toDateString 不带 'Day name'

javascript - Twitter 小部件完全加载后调用函数

javascript - 从字符串的开头删除特定字符串?

javascript - 如何在提示前进行 console.log

javascript - IE 中的文本变形

javascript - while循环仅在本地打开网页时有效

当我更改为 Google JQuery 库时,Javascript 无法工作?

javascript - jQuery 使链接处于事件状态

javascript - Ajax 提交表单时收到 400 Bad Request

php - 使用 jquery 发布和返回数据会损坏 å ä ö