繁体   English   中英

Javascript If语句未评估为True

[英]Javascript If Statement not Evaluating True

我试图在forEach循环中捕获最后一种情况,但是所有情况似乎都评估为false而不是最后一种情况为true。 我的代码:

for(var i in networks){
    if (i == (networks.length - 1)){
        //do stuff
    }
}

怎么了?

尝试这个:

for(var i = 0, j = networks.length; i < j; i++){
    if (i == (j - 1)){
        //do stuff
    }
}

我个人鄙视JavaScript中的for...in循环,因为它给图片带来了一堆不需要的属性,这是不可靠的-需要进行大量的检查以确保当前属性不是不需要的类型或未定义。 我可以继续下去。 我建议,您唯一想到使用它的时间是当您遍历对象并且需要键值时。

如果网络是一个从0到n的数字数组,那应该可以工作。 ;)否则,您可能需要考虑标准的for循环:

for(var i = 0; i < networks.length; i++) {
    var network = networks[i]; // in case you need this.
    if (i == (networks.length - 1)){
        //do stuff
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM