我正在使用isFinite确定数组中的键是否正确,

for (x in selectList) {
        if (isFinite(x)) {
             $('#' + selectList[x])[0].selectedIndex = 0;
        }
}


我以为这可以正常工作,但是现在在Firefox中,当x未定义时,isFinite返回TRUE。在我看来这不合适。这是一个错误吗?

最佳答案

您切勿对数组使用for..in。有很多事情可能出错。有关说明,请参见thisthis

只需使用普通香草进行循环即可。然后,您无需使用isFiniteisNaN

09-20 15:35