Guijapa 0 Denunciar post Postado Julho 25, 2007 Eu crio variáveis sempre sem o "var VariavelX = ...", já vai direto o "VariavelX = ..."Qual a diferença!?!?! Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Julho 25, 2007 nenhuma <_< no action script 2 é apenas uma boa pratica você declarar as variaveis antes de usa-lasmas caso seja dentro de uma classe é obrigatórioainda bem que no AS3 isso não existe mais :) Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Julho 25, 2007 É... na verdade rola uma diferença sim. Sem o var a sua variável fica disponivel para toda a timeline onde ela voi declarada, inclusive dentro de funções etc. A variável com var expira logo assim que uma função termina, é bom que economiza memória e o processamento é mais rápido. Saca só: frase = "eu sou a frase de fora";function teste() { var frase = "eu sou a frase de dentro"; trace(frase);}teste();trace(frase);Mesmo usando o mesmo nome para as duas variáveis você tem resultados diferentes no output. A primeira variável que aparece no output é usada só dentro da função teste() e a segunda fica disponível para toda a timeline. Se quiser ver a variável de fora por dentro da função use: frase = "eu sou a frase de fora";function teste() { var frase = "eu sou a frase de dentro"; trace(frase); //para ver a de fora, localize em qual timeline ela está: trace(this.frase);}teste();trace(frase);Agora, só pra comprovar, não vamos usar o var na variável de dentro e ver o que acontece: frase = "eu sou a frase de fora";function teste() { frase = "eu sou a frase de dentro"; trace(frase); trace(this.frase);}teste();trace(frase);Teste o código e verá que ele substituiu o valor da variável de fora. Abraço galera Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Julho 25, 2007 bem lembrado Antonio nesse caso seria uma questão de escopo da variavel, caso se precise utilizar o mesmo nome dentro e fora de uma função uma outra vantagem que lembrei agora é para tipificar a variavel, digitar " : " e o tipo da variavel var numero:Number = 0 só funciona com o var antes numero:Number = 0//var acusar errotipificar uma variavel é util para evitar que você insira um tipo de valor diferenter a ela var numero:Number numero = "teste" // vai acusar erro além disso quando você tipifica a variavel, a opção de code hints fica disponivel(aquela caixinha com as propriedade e metodos que abre depois do ponto " . " ) essa ai: Compartilhar este post Link para o post Compartilhar em outros sites
Guijapa 0 Denunciar post Postado Julho 26, 2007 Valew aew Eder Fortunato e Antoniosp!!! Eu comecei a usar actionscript por causa do trampo... mas aprendi melhor por causa de um programador q entrou lá e me ajudava e incentivava a desenvolver minhas próprias actions ao invés de pegar pronto na net!!! Acho q faz uns 7 meses q mexo com action... mas aprendi tudo na raça... então muita coisa teórica eu deixei passar pela euforia de ver tudo funcionando!!! Esse meu site por exemplo é todo em action... não existe nada no palco... Compartilhar este post Link para o post Compartilhar em outros sites
SlyX 0 Denunciar post Postado Agosto 17, 2007 muito bom o topicomas fiquei com uma duvida..caso eu declare a variavel dentro de uma funcao.. ela ira expirar quadno a funcao acabar certo? entao nao terei acesso a ela em outra timeline dentro de um movieclip...logo, a solucao seria declara ela direto (ao invez de usar var Nome = "Joao";) usar Nome = "Joao";...porem isso seria errado? seria uma má pratica como o eder falou acima.. declar as variaveis antes.. era uma boa pratica..ou eu poderia declarar a variavel fora, e por o valor dentro(alimentar uma variavel, declarada fora, dentro uma funcao)? hmm tipovou tentar isso agora, acho qu vai dar certo (como sou burro) Compartilhar este post Link para o post Compartilhar em outros sites
SlyX 0 Denunciar post Postado Agosto 17, 2007 var histTitulo:String;var retorno:LoadVars = new LoadVars();retorno.load('http://localhost/graticia/historia.php');retorno.onLoad = function(ok) { if (ok) { pages.for_text.asd.histTexto.text = this.texto; histTitulo = this.titulo; }};trace(histTitulo);nao teve como =/var histTitulo:String;var retorno:LoadVars = new LoadVars();retorno.load('http://localhost/cliente/historia.php');retorno.onLoad = function(ok) { if (ok) { pages.for_text.asd.histTexto.text = this.texto; histTitulo = this.titulo; }};trace(histTitulo);nao teve como =/ Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Agosto 18, 2007 o que você fez no segundo codigo esta certo, o problema foi que você esta testando dentro do onLoad, ele demora um pouco pra carregar da uma lida aqui que foi mostrado como corrigir isso []´s Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Agosto 20, 2007 Só pra constar, dá pra fazer isso sim SlyX: var nome:Stringfunction teste (){ nome = "Antonio";}trace(nome) // undefinedteste();trace(nome) // Antonio Abraço Compartilhar este post Link para o post Compartilhar em outros sites