代码之家  ›  专栏  ›  技术社区  ›  user216441

无法使用“继续<label>”

  •  3
  • user216441  · 技术社区  · 14 年前

    我正在尝试以下代码:

    entLoop:for(var i:*in entities) {
        for(var i2:*in ignoreEntities) {
            if(entities[i].type==ignoreEntities[i2]) {
                continue entLoop;
            }
        }
    }
    

    为什么不起作用?错误是:

    找不到continue语句的目标。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Zed-K    14 年前

    我可能错了,但是 continue 指令不适用 for...in 循环。

    编译器不会对此代码抛出任何错误:

    entLoop:for(var i:Number = 0 ; i < 2 ; i++) {
      for(var i2:Number = 0 ; i2 < 2 ; i2++) {
        if(true) {
          continue entLoop;
        }
      }
    }
    

    (我用 true 因为我没有你的定义 entities ignoreEntities 数组)

        2
  •  -2
  •   Theo.T    14 年前

    我想你得用 break LABEL; 相反。

    来自实时文档: http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/statements.html