Der skal aldrig være ";" efter en afslutte tuborg i programmering. Der er dog den ene undtagelse i Flash, at "inline" funktioner kan have det, da de faktisk bare er en variabel-tildeling:
var func = function(a) { return a+1;};
Eller:
func = function (a) { return a+1; };
Men det er også den eneste undtagelse - og her kan de udelades, da semikolon altid kan udelades efter udtryk i flash:
Se på det som "udtryk". Parseren splitter det hele op i udtryk, og kommer den til "for", så tager den fra førstkommende "{" til den matchende "}" og laver det til et "udtryk", der igen skal parses.
Havde du skrevet et semikolon efter, så havde de været som at skrive:
a = 1;;
Det ekstra semikolon angiver et tomt "udtryk" - det har altså ingen effekt.
Som jeg skrev: Hvis funktionen defineres på den specielle måde, som ECMA-262-standarden tillader, hvor det, at være en funktion, faktisk bare er en speciel type variabel:
_root.onRelease = function() { trace("klik"); };
Men man kan også:
function minOnRelease() { trace("klik"); } _root.onRelease = minOnRelease;
Er det noget, som jeg har bare en smule forstand på, så burde det være parsing, syntax og semantik - det er trods alt en stor del af mit studie :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.