javascript - 在语法 For 循环中定义循环条件数组/对象

标签 javascript arrays object for-loop conditional-statements

当我循环数组或对象时,我经常使用这种方式:

var arrCars = ["opel" , "audi" , "volvo" , "volkswagen" , 
              "renault" , "porsche" , "infinity" , "lexus"];

for (var i = 0, a; a = arrCars[i]; i++) {
  alert(a);
}

fiddle

在我看来,它给出了清晰的短代码,而不是例如这个:

for (var i = 0; i < arrCars.length; i++) {
  alert(arrCars[i]);
}

在这个例子中,这不是一个大问题,但是当有一些嵌套对象等时,它会给出很多代码。

有很多语法可能性,就像您在这个问题 here 下看到的那样。但我仍然不知道如何循环遍历数组的一部分。例如,如何使用我喜欢的语法仅循环前 3 个值。当然,我可以使用额外的条件语句,但我想知道如何在 for 语法本身中包含此条件,例如:“for (var i = 0; i < 4; i++){}”,当然如果可能的话。

最佳答案

由于我在评论中提到的原因,我不喜欢你的语法。但回答这个问题:

for (var i = 0, a; i < 3 && (a = allCars[i]); i++)

FIDDLE

关于javascript - 在语法 For 循环中定义循环条件数组/对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24331612/

相关文章:

javascript - 表单 ID 重复

objective-c - 如何在 Objective-c 中将数组声明为常量?

c++ - 更改二维矩阵上的值时出现段错误

java - 关于类型转换对象

javascript - 在没有网络的情况下编译 V8 等

javascript - AngularJS - 如何将键值对插入数组?

使用 malloc 将 token 复制到二维数组

javascript - JavaScript 对象(引用类型)是通过引用返回的吗?

java - Java 类中的继承

javascript - Topojson 动画一次飞行