PDA

Просмотр полной версии : Моя первая проблема(функции и переменные)


_sadner
20.10.2007, 18:56
// все это писалось на Flash Professional 8 ( вроди как AS2.0)
var cfg_Config:LoadVars = new LoadVars();
cfg_Config.load("config.ini"); // файл такого содержания: myParam=5
cfg_Config.onLoad = function() {
asd = cfg_Config.myParam;
trace (asd); // выводит 5
}
trace (asd); // значение не определено

Что мне сделать чтоб значение asd выводилось и во втором случае?
как я понял значение переменной хранится только в пределах функции, как мне это обойти?

iNils
20.10.2007, 19:22
Загрузка происходит асинхронно выполнению кода. Поэтому во втором случае asd просто еще не определено.
var cfg_Config:LoadVars = new LoadVars ();
cfg_Config.load ("config.ini");
cfg_Config.onLoad = function () {
asd = this.myParam;
trace (asd);
};
setTimeout (this, "a", 1000);
function a () {
// через 1 секунду
trace (asd);
}

CorC
22.10.2007, 10:25
Вобщето по уму нужно функцию "a" вызывать в самом конце onLoad'a но для начала и setTimeout сгодиться :)
Просто если файл большой или скорость инета стремится к 0, то опять получите undefined

iNils
22.10.2007, 15:42
CorC, это был пример того, что asd определен, а не призыв к действию. :)