Просмотр полной версии : Ссылка на переменную
motoroller
04.01.2011, 18:45
Скажите как сделать:
есть перменные:
private var music:FileFilter = new FileFilter("Music Files (*.mp3)", "*.mp3");
private var client:FileFilter = new FileFilter("JPEG Files (*.jpg)", "*.jpg");
Далее я получаю из web переменные:
typeFiles = myFlashVars.type ? myFlashVars.type : any;
В данном случае у меня myFlashVars.type равна 'music'
Скажите как сделать чтобы в переменную передалась не текстовая строка 'music', а переменная music,
то есть поместился FileFilter
Может так?
typeFiles = this[myFlashVars.type ? myFlashVars.type : "any"];
Терпеть не могу тернарные операции. По простому то никак?
if(myFlashVars.type == "music")
{
typeFiles = new FileFilter("Music Files (*.mp3)", "*.mp3");
}
else if(myFlashVars.type == "client")
{
typeFilesr = new FileFilter("JPEG Files (*.jpg)", "*.jpg");
}
motoroller
04.01.2011, 19:29
а если таких типов 40?
что тут городить else if
Добавлено через 49 секунд
Может так?
typeFiles = this[myFlashVars.type ? myFlashVars.type : "any"];
Ну вот тут я опять троку передам а не значение переменной
а мне надо передать значение переменной
Ну тогда ассоциативный массив создайте:
var fileTypes:Object = new Object();
fileTypes.music = new FileFilter("Music Files (*.mp3)", "*.mp3");
fileTypes.client = new FileFilter("JPEG Files (*.jpg)", "*.jpg");
fileTypes.rar = new FileFilter("RAR Files (*.rar)", "*.rar");
...
var typeFiles = fileTypes[myFlashVars.type]
Создайте объект вида:
private var types:Object = {};
types.music = new FileFilter("Music Files (*.mp3)", "*.mp3");
types.client = new FileFilter("JPEG Files (*.jpg)", "*.jpg");
// и обращайтесь потом к нему
typeFiles = types[myFlashVars.type ? myFlashVars.type : "any"];
Добавлено через 4 минуты
Ну вот тут я опять троку передам а не значение переменнойОбъясните мне, малограмотному, почему? По-моему через this["music"] будет как раз идти обращение к приватной переменной, объявленной выше.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.