来自 JavaScript 循环的意外结果

unexpected result from javascript loop

本文关键字:意外 结果 循环 JavaScript 来自      更新时间:2023-09-26

我做了一些简单的js代码,但结果出乎意料。这怎么可能?

var n = $("#mGrid tbody tr[class*='success']");
console.log(n.length);
for (var i in n)
{
    console.log("x");
}

安慰

阿拉伯数字

202 x

这意味着在

控制台中打印x 202次。当您在对象上使用for..in循环时,特定对象的可枚举属性将被迭代,直到它的原型链结束。

您的对象有 202 个可枚举的属性,包括自己的属性和原型属性。

要迭代 jquery 对象,您可以使用如下所示.each

e.each(function(){
 //$(this) the current element on the iteration.
});

仍然如果你想使用 for 循环,那么你必须像下面这样做,

for (var i=0,i< n.length;i++) {
    console.log("x");
}