我有一个名为segments
的精灵数组,我想在每个循环中跳过segments
的第一个元素。我现在正在这样做:
var first = true;
for each (var segment in this.segments)
{
if(!first)
{
// do stuff
}
first == false;
}
有更好的方法吗?谢谢!
答案 0 :(得分:5)
如果它的数组为什么不仅仅是:
for(var i:int = 1; i < this.segments.length; i++)
{
}
答案 1 :(得分:2)
答案 2 :(得分:0)
您可以使用Array.prototype.slice遍历数组的子集:
for each (var segment in this.segments.slice(1))
{
// do stuff
}
这确实会复制数组,因此比使用基于索引的方法要慢(如d4rklit3建议):
for each (var i = 1; i < segments.length; i++)
{
var segment = segments[i];
// do stuff
}
但是您确实保存了一行代码,并且看起来更清晰(只要您了解切片在做什么)。