将字母附加到变量名称

时间:2011-10-26 19:33:08

标签: flash actionscript-3 variables

我需要在引用它时将4个字母附加到我的变量名,以获取西班牙语或英语XML数据。我试图重用我的函数而不编写if语句。

像这样:

//two options for
    var spa_my_videos:XMLList;
    var eng_my_videos:XMLList;

//APPEND OPTIONS
    var spanishLang:String = "spa_";
    var englishLang:String = "eng_";

//CALL FUNCTION AND ADD APPEND OPTION
    makePlayer (englishLang);


    function makePlayer (lang:String):void {

        my_player = new FLVPlayback();
        my_player.seekBar = SB;
        my_player.playPauseButton = PPB; 
        my_player.volumeBar = VB;

        my_player.x = video_x;
        my_player.y = video_y;
        my_player.width = 1023;
        my_player.height = 630;

        main_container.addChild (my_player);

    //THIS IS WERE DEPENDING ON THE VALUE OF LANG I NEED TO USE THE spa_ or eng_ XML data

        my_player.source = root_path + lang + my_videos[0].@URL;
    }

2 个答案:

答案 0 :(得分:1)

您的问题令人困惑,但如果我理解正确,您可以使用AS3上提供的Object [“variableName”]功能来解决这个问题。 此功能允许您通过Object.variable或Object [“variable”]访问变量,因此您可以在字符串上构建变量名称,并使用它来引用您想要的内容。

答案 1 :(得分:0)

在makeplayer功能之外

var videos:Object = {};
videos[spanishLang] = spa_my_videos[0].@URL;
videos[englishLang] = eng_my_videos[0].@URL;

在makeplayer函数中

my_player.source = root_path + lang + videos[lang][0].@URL;