Der findes ikke "rigtige" booleans i flash... "true" betyder i virkeligheden bare 1 og "false" er 0. Jeg plejer selv at bruge 1 hhv. 0 for true hhv. false. Det er kortere og nemmere. Ligesom i C og PHP er tal det samme som booleans, således at 0 er false og ikke-0 er true. Følge er ækvivalent;
if (counter == 0) if (!counter) if (new Boolean(counter))
Eller:
if (counter == 1) if (!(counter-1))
Hvor "!" betyder logisk NOT. Nederste ækvivalens er lidt sværere at gennemskue og jeg bruger da også kun sjældent denne fremgangsmåde... :o)
Med hensyn til de forskellige expressions i et expression, så er "and", "or" og "not" gamle, deprekerede betegnelser fra Flash4. De nye er "&&", "||" og "!". Skal du evaluere flere udtryk efter hinanden gøres det ved at sætte sådanne udtryk i mellem dem:
if (expression1 && (expression2 || !expression3))
Og nu jeg har muligheden:
Jeg kan ikke tåle udtryk som:
if (someBoolean == true && someOtherBoolean == false)
booleans er præcis det samme som integers i flash... det er ikke noget, der i den publicerede flashfilm (.swf) der hedder true eller false.. de bliver oversat til 1 og 0 alligevel... :o)
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.