0

我也无法让这个开关工作。理想情况下,我希望必须满足 if else 语句中的条件。它下面的 if else 语句有效,但我不知道如何添加 3 个 if。

        function spriteAI1() {
        var posX = c2Sprite.position.x
        console.log(c2Sprite.position.x);
        switch(c2Sprite)
        {
        case c2Sprite.position.x > 30: 
        //&& c2Sprite.position.x <= 450:
        c2Sprite.translateX( -7 );
        break;
        //case c2Sprite.position.x < 30: 
        //&& c2Sprite.position.x >= -450:
        //c2Sprite.translateX( 7 );
        //break;
        //case c2Sprite.position.z < 30 
        //&& c2Sprite.position.x < 30:
        //c2Sprite.remove;
        //c2Sprite.clone;
        //break;
        //default: 
        //c2Sprite.translateX( -7 );
        //break;
               }
        }


                            function spriteAI2() {

            if (c2Sprite.position.z >= 30 && c2Sprite.position.z <= 350) { 
            c2Sprite.translateZ( -7 );
            } else if (c2Sprite.position.z <= -30 &&c2Sprite.position.z >= -350) {
            c2Sprite.translateZ( 7 );   
            } 
            //else (c2Sprite.position.z = 30 && c2Sprite.position.x = 30) { 
            //c2Sprite.remove;
            //c2Sprite.clone;
            //}
        }   
4

1 回答 1

1

case不支持比较。

当 you 时case c2Sprite.position.x > 30,您本质上是在比较case trueor case falsec2Sprite.position.x两者都不是。

考虑切换到if语句,如下所示:

if (c2Sprite.position.x > 30) { ... }
于 2013-09-25T22:21:50.893 回答