Vermijden Tegenstrijdige variabelen in ActionScript


  Share  
|


U wilt er zeker van dat variabelen binnen een functie niet interfereren met de variabelen in andere functies of in de tijdlijn waarin de functie is gedefinieerd. Gebruik het var zoekwoord om lokale variabelen te verklaren.

Het algemeen moet u verklaren variabelen die worden gebruikt in functies als lokale variabelen. Lokale variabelen zijn alleen bekend binnen de functie. Daarom doen ze niet in strijd met variabelen van dezelfde naam in andere functies of binnen de termijnen waarin de functies worden gedefinieerd. Om een variabele lokaal, het te verklaren met de var trefwoord. Parameters worden automatisch behandeld als lokale variabelen, zodat u niet hoeft te de var trefwoord verklaren wanneer de parameters voor een functie op te nemen.

functie localVarsFunction (param1, param2) (var myVar; myVar = "Lokale variabelen zijn leuk.";)

Of, bondig, kunt u schrijven:

functie localVarsFunction (param1, param2) (var myVar = "Lokale variabelen zijn leuk.";)

Variabelen verklaard zonder dat de var trefwoord impliciet scoped aan de tijdbalk waarop zij wonen (merk op dat in tegenstelling tot sommige talen, ActionScript is niet nodig je aan een variabele te verklaren voor het toewijzen van een waarde voor de eerste keer). In dit geval myVar is een tijdlijn variabele, niet een lokale variabele, ook al is verklaard binnen een functie:

timelineVarsFunction function () (myVar = "Timeline variabelen zijn leuk, maar meestal niet een goede keuze in functies.";)

Het declareren van een globale variabele, hechten zij als een eigenschap van de _global object, als volgt:

_global.companyName = "Person13";

Zodra verklaard, een globale variabele kan zijn toegankelijk vanaf elke plek in de film gewoon op basis van zijn naam, als volgt:

trace ( "Welkom op de" + companyName + "-website.");

Echter, een lokale variabele met dezelfde naam heeft voorrang op de globale variabele:

localVarsFunction function () (var companyName = "Macromedia"; / / Dit geeft 'Welkom op de Macromedia-website. "trace (" Welkom op de "+ companyName +"-website. ");
 / / Om toegang te krijgen van de globale variabele met dezelfde naam, voorafgegaan met _global. / / Dit geeft 'Welkom bij de Persoon 13 Web site. "Trace (" Welkom op de "+ _global.companyName +"-website. "); )

Om deze reden, zorg ervoor dat je altijd voorvoegsel een globale variabele referentie met _global wanneer u wilt dat de waarde vastgesteld. Anders zal Flash een nieuwe lokale variabele met dezelfde naam, die mogelijk kan problemen veroorzaken

een artikel afkomstig van Gabriel Savimbi


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions