Ten eerste is de opbouw van de taal wezenlijk veranderd. Flash gaat nu nog meer uit van een objectgerichte werkwijze, voortbouwend op de ECMA standaard. ECMA is o.a. De specificatie voor JavaScript. Dit betekent dat u het aanroepen van functies voor een object anders aanpakt.
Een voorbeeld. Een bekend object in Flash is de Array. Een bewerking op een aangemaakte Array maken doet u als volgt: naamVanDeArray.Bewerking
U laat de naam van de bewerking voorafgaan door de naam van het object gevolgd door :en punt. Als u ervaring heeft met andere programmeertalen zal deze zogenaamde dot-notation (puntnotatie) u bekend voorkomen. Voor de duidelijkheid nog enkele voorbeelden: mijnString.toLowerCase()
Het werken met objecten heeft een groot aantal voordelen. Zo kunt u zelf objecten maken en eigenschappen (properties) en functies ervan (methods) bepalen. Dit betekent dat u alleen de knop een instantienaam hoeft te geven en de eventhafhandeling te definiëren.
Objecten hebben Methods en Properties. Methods zijn objectgebonden functies en e Properties zijn objectgebonden eigenschappen. Het meest gebruikte object in Flash is de MovieClip, deze heeft vele Methods (gotoAndPlay(), stop(), loadVariablesNum() ezv.) en Properties zoals _x, _y, _visible, _rotation en _url. Al deze Methods en Properties gebruikt u bij het werken in Flash.
Objecten kunt u ook uitbreiden met nieuwe functies, waardoor het gemakkelijker wordt om bepaalde zaken voor elkaar te krijgen. Wanneer u bijvoorbeeld een tekst zonder spaties wilt, kunt u dit op verschillende manieren oplossen. De eerste manier is om een ftmctie te schrijven die spaties in een String opzoekt en deze verwijdert, zoals hier: function geenSpaties(tekst) { return tekst.split(“ “).join(“”); }
De functie ‘geenSpaties()’ maakt gebruik van twee Array-fiincties namelijk ’split()’ en ‘join()’. ‘Split()’ neemt de string en deelt deze op met als scheidingsteken de komma. Deze array wordt daarna weer tot een string samengevoegd met ‘join()’
Wanneer het String-object de functie ‘geenSpatiesO’ heeft, kunt u schrijven: mijnString.geenSpaties();
Bij een uitbreiding van een object krijgt elke instantie van het object dezelfde extra Method.
Om aan het String-object een nieuwe Method toe te voegen voegt u deze toe aan het prototype van het object: string.prototype.nieuweMethode = function () { return tracé(“Nieuw hier?”); }
Add A Comment
You must be logged in to post a comment.
