Frank Souza 0 Denunciar post Postado Julho 6, 2009 Como faço para controlar uma variável externa ao escopo de uma função referenciando-a através de uma parâmetro? Exemplo: var minha_variavel:Boolean = false; function alterar_variavel(variavel:Boolean) { variavel = true; } alterar_variavel(minha_variavel); trace(minha_variavel); //O problema é que aqui a minha_variavel continua false Entenderam? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 6, 2009 Você precisa adicionar o retorno da função ;) Então ficaria assim o código que você quer: var minha_variavel:Boolean = false; function alterar_variavel(variavel:Boolean) { return(variavel = true); } minha_variavel = alterar_variavel(minha_variavel); trace(minha_variavel) Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Frank Souza 0 Denunciar post Postado Julho 6, 2009 Vlw salvou minha vida... abraço!! Compartilhar este post Link para o post Compartilhar em outros sites
Frank Souza 0 Denunciar post Postado Julho 8, 2009 Desculpem reabrir o tópico, mas outro probelma surgiu derivado desse anterior.... o problema agora é este: Isso funcionou beleza... var minha_variavel:Boolean = false; function alterar_variavel(variavel:Boolean) { return(variavel = true); } minha_variavel = alterar_variavel(minha_variavel); trace(minha_variavel) So que agora vamos supor que eu tenha uma função dentro desta anterior: var minha_variavel:Boolean = false; function alterar_variavel(variavel:Boolean) { alguma_mc.onEnterFrame = function(){ delete this.onEnterFrame; return(variavel = true); } } minha_variavel = alterar_variavel(minha_variavel); trace(minha_variavel) como eu faço para que esse "return(variavel = true);" da função interior atue como o return da função alterar_variavel() ?? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 8, 2009 Não entendi a sua pergunta E basicamente isso aqui: alguma_mc.onEnterFrame = function(){ delete this.onEnterFrame; } E nada é a mesma coisa... pq você abre o onEnterFrame não faz nada... e fecha... E não se deve colocar função onEnterFrame dentro de função de retorno Abraços Compartilhar este post Link para o post Compartilhar em outros sites