我做了一些简单的js代码,但结果是意外的。 这怎么可能?来自javascript循环的意外结果
var n = $("#mGrid tbody tr[class*='success']");
console.log(n.length);
for (var i in n)
{
console.log("x");
}
控制台
202 X
我做了一些简单的js代码,但结果是意外的。 这怎么可能?来自javascript循环的意外结果
var n = $("#mGrid tbody tr[class*='success']");
console.log(n.length);
for (var i in n)
{
console.log("x");
}
控制台
202 X
这意味着202
倍x
印刷在控制台。当您在对象上使用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");
}
你可以使用'.each()'循环所有由'n'选择的DOM节点。 – Terry