Vi må ofte bruke et tilfeldig generert nummer for bestemte situasjoner; ved hjelp av Math.random () * n vil vanligvis gjøre trikset, men det vil kun beregne et tall fra 0 til n. Hva om vi trenger et tall som ikke gir 0 som minimumsverdien? Hvordan kan du generere et tilfeldig tall mellom 100 og 1000? Jeg vil vise deg hvordan du gjør det i denne Quick Tip.
Dette eksemplet viser funksjonen vi skal skape:
Skriv inn to tall, skilt med en ',' og trykk på tilfeldig knapp.
Ved å bruke en funksjon opprettet i ActionScript 3, beregner vi et tall mellom to verdier. Disse verdiene vil bli sendt som parametere og brukes med Math-klassen for å generere et tilfeldig tall.
Åpne Flash og opprett en ny Flash-fil (ActionScript 3.0).
trykk Alternativ + F9 eller gå til Vindu> Handlinger for å åpne handlingspanelet.
Erklære en funksjon og gi den navnet randomRange; Denne funksjonen returnerer tilfeldig tall, så sett inn returtype til Nummer.
funksjon randomRange (): Number
To parametere vil bli brukt til å beregne tallet.
funksjon randomRange (minNum: Nummer, maxNum: Nummer): Nummer
Dette er funksjonen med den faktiske tilfeldig talgenerator linje. Maktens kraft brukes til å generere tallet.
funksjon randomRange (minNum: Nummer, maxNum: Nummer): Nummer retur (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum);
Vi har vår tilfeldige talegeneratorfunksjon, men hva gjør denne funksjonen?
Ta en titt på følgende bilde for å få en bedre ide:
I bildet eksempel, hvis Math.random () var mindre enn 0,5, ville resultatet være 550.
En enkel måte å teste funksjonen på er å bruke a spor () funksjon. Se koden under:
funksjon randomRange (minNum: Nummer, maxNum: Nummer): Nummer retur (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum); spor (randomRange (10, 20)); // Et tall mellom 10 og 20
Dette er et fungerende eksempel, det bruker en knapp for å beregne tallet og vise det i a Tekstfelt.
/ * The randomRange funksjonen * / funksjonen randomRange (minNum: Nummer, maksNum: Nummer): Nummer retur (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum); / * Handlingene som skal utføres når knappen trykkes * / funksjonsknappAction (e: MouseEvent): void // En array lagrer tallene i tekstfeltet var n: Array = inputText.text.split ("," ); // Beregn nummeret basert på inngangen, konverter resultatet til en streng // og send den strengen til tekstfeltet generatedNumber.text = String (randomRange (n [0], n [1])); // Legg til knappens hendelselytter actionButton.addEventListener (MouseEvent.MOUSE_UP, buttonAction);
Skriv inn to tall, skilt med en ',' og trykk på tilfeldig knapp.
Dette er et grunnleggende eksempel på hvordan du kan bruke denne funksjonen; eksperimentere og bruk det i dine egne prosjekter!
Takk for at du leste!