在for循环中使用if语句

时间:2015-08-01 14:42:09

标签: javascript arrays if-statement for-loop

目前我在for循环中使用if语句来计算数组

for(count = 0; count < order.length; count++)
{
    if(order[count] == "")
    {
        alert("You must select an item");
        return false;
    }
    else
    {
        $.mobile.changePage();
        $("#idTag").after("<p>"+order[count]+"<p/>");
    }
}

我的问题是,如果订单[0]中包含信息,并且如果任何其他数组索引没有信息,则当我不想要时,警报仍会运行。无论如何都要确保一旦检查了数组,它就会运行else语句而不返回if语句。

任何帮助将不胜感激

约翰

3 个答案:

答案 0 :(得分:1)

维持flag

var flag  = 0;

for(count = 0; count < order.length; count++)
{
    if(order[count] == "" && flag == 0)
    {
        alert("You must select an item");
        break;
    }
    else
    {
        flag = 1;
        $.mobile.changePage();
    }
}
if(flag == 1)
    return false;

答案 1 :(得分:1)

听起来,只要您的订单的值不是"",您就想要退出循环。这可以通过添加break语句来完成。

for(count = 0; count < order.length; count++)
{
    if(order[count] == "")
    {
        alert("You must select an item");
        return false;
    }
    else
    {
        $.mobile.changePage();
        break;
    }
}

答案 2 :(得分:1)

首先,想知道是否需要将count变量设为局部(就像在包含for循环的任何函数的本地一样)。其次,在运行所需的jQuery代码之后,在else条件中打破循环应该没有任何问题。请尝试以下代码,

for(var count = 0; count < order.length; count++)
{
    if(order[count] == "")
    {
        alert("You must select an item");
        return false;
    }
    else
    {
        $.mobile.changePage();
        $("#idTag").after("<p>"+order[count]+"<p/>");
        break;
    }
}