Добавление букв к имени переменной

#flash #actionscript-3 #variables

#flash #actionscript-3 #переменные

Вопрос:

Мне нужно добавить 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;
    }
 

Ответ №1:

Ваш вопрос немного сбивает с толку, но, если я вас правильно понял, вы можете обойти это, используя функцию Object [«variableName»], доступную в AS3. Эта функция позволяет получить доступ к переменной с помощью Object.variable или Object[«переменная»], так что вы можете создать имя переменной в строке и использовать его для ссылки на то, что вы хотите.

Ответ №2:

вне функции 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;