Hvis og hvis Else: Apple Betinget Statements

If og hvis Else: Apple betinget utsagn

Betinget uttalelser er ryggraden i mange programmering og skriptspråk. I Applescript, gir de en måte for deg å legge til en annen dimensjon av kompleksitet til dine skript ved å analysere og reagere på ulike situasjoner. Denne opplæringen vil ta en nærmere titt på hvis Anmeldelser og hvis annet
uttalelser og ulike måter å implementere dem i et skript.



Dykking Deep inn i Apple

Så langt har vi lagt ut to artikler som er perfekt for å ta deg fra en nybegynner til noen som kompetent kan jobbe deg rundt en grunnleggende skript:

The Ultimate nybegynners guide til Apple

Avansert Apple Teknikker

Disse tutorials tjene som en oversikt og gi deg en god ide om hvordan Apple fungerer samt hvilke typer programmering strukturer er involvert. Hvis du er virkelig innstilt på å bli en mester manusforfatter skjønt, er du nødt til å gå mye dypere inn i syntaks og konstruksjoner som utgjør Applescript.

Ikke bekymre deg, vi er med deg hvert steg på veien. Dette er den første i en serie artikler som kommer til å ta en lang hard titt på ulike aspekter av Applescript, slik at du kan utnytte sin utrolig kraft til å automatisere Mac

. Tips: For å kjøre skript i dette innlegget , må du åpne "Applescript Editor" app, som kan finnes i Programmer> Verktøy
.

Hva om?

I Applescript, vil du bli hardt presset til å finne to tegn som rival makt "hvis". Hvis du lære å skikkelig utøve denne tilsynelatende enkle verktøy, vil du gå langt.

En grunnleggende hvis
uttalelse fungerer mye som en fortelle
blokk. Bare for en oppfriskning, her er strukturen i en fortelle Bilde:

[Applescript] forteller programmet " Safari " activateend fortelle [/Applescript]

Som du kan se, lanserer dette skriptet Safari. Den har tre linjer: den første og siste utgjør tell "block", som alltid skal inneholde en end
uttalelse. Alt mellom disse to linjene utgjør kroppen av tell blokken.

Betinget uttalelser, samt mange andre konstruksjoner, låne den samme strukturen, bare denne gangen bruker vi hvis
istedenfor fortelle
.

[Applescript] hvis sant da --do somethingend hvis [/Applescript]

Denne strukturen er ganske grei, og bør gjøre perfekt forstand. Først starter du din betinget uttalelse, og du kvalifiserer det med en boolsk, så du skriver dine kommandoer som utløser i tilfelle av en sannhet, og til slutt, du stenge din uttalelse med en end
.
Anatomien til en betinget utsagn

Tips: I Applescript Editor, trenger du ikke å skrive ut "end hvis", bare "end". Kompilatoren vil automatisk legge resten, selv om du har flere slutt uttalelser som tilhører forskjellige typer blokker. Det tall det ut for deg!

Boolie Hva nå?

Før vi går videre, er det helt avgjørende at du forstår nøyaktig hva jeg mener når jeg refererer til en boolsk. Boolean er en datatype som bare kan ha én av to verdier: sant eller usant. I en verden av databehandling, absolutter absolutt eksistere. Enten noe er, eller er det ikke, det er ingen i mellom.

Applescript kan lett finne ut om visse ting er sanne, og bruke denne kunnskapen til å drive et betinget utsagn. Å prøve det ut, kan du prøve å skrive i et likestillings uttalelse rett inn i Applescript Editor og kjører det.
"Ekte" returneres

Som du kan se, kompilatoren evaluert utsagnet "10> 1", og korrekt returnert "ekte". Hvis vi snur på at likestilling symbol rundt og kjøre "10 ApplScript kan vurdere alle slags forskjellige uttalelser.
Hvordan conditionals Bruk Booleans

Nå som du forstår hva en boolsk er, er det lettere å vikle hjernen din rundt hvordan conditionals fungere. Som vi så i tabellen over, sier et betinget utsagn, "hvis dette boolsk evalueres som sann, så gjør noe."

La oss se dette i praksis ved hjelp av "10> 1" utsagn om at vi testet tidligere:

[Applescript] hvis 10 > en så tilbake " Det er riktig " slutten hvis [/Applescript]

Her har vi byttet ut ordet "true" med noe! . som vi ønsker Applescript til å evaluere Strukturen her er akkurat det vi har sett før.
Fordeling av et betinget utsagn

Gitt denne strukturen, kommandoene inne i hvis setningen vil bare kjøre hvis boolsk viser seg å være sant . I dette tilfellet er utsagnet sant, så vi får se følgende i "Result" delen av vinduet Applescript Editor.
script returnerte "Det er riktig!"
Enkeltlinje Conditionals
< p> I tilfelle du lurer på, er det en spesiell, konsis form av en hvis
uttalelse som bare opptar en enkelt linje. Det krever ikke en "end", og kan ikke ta noe av den ekstra kompleksitet som vi skal se på i neste avsnitt, men det er nyttig for enkle tilfeller

[Applescript] -. Enkeltrom linje hvis statementif 10 > 2 deretter tilbake " ja " [/Applescript]

Else

Gitt at 10 ikke er større enn 20, den andre setningen vil bli returnert. Din Resultatet skal se omtrent slik ut: "Det er riktig".
Script returnerte

Nå som vi kan stå for to forskjellige boolske scenarier, vi er mye mer egnet til å takle komplekse scripting utfordringer

Else Hvis

Som du kan forestille deg, selv dette er ikke nok til å gjøre rede for alle de forskjellige situasjoner som du kommer til å kjøre inn. Kanskje har vi en ganske kompleks scenario at der en rekke ulike utfall er mulig.

I dette scenariet vi kan implementere annet hvis
å fortsette å legge kompleksiteten i vår hvis
uttalelse. Tenk på følgende:

[Applescript] satt theWeekDay til ukedag fra (dato)

if (theWeekDay = fredag) så tilbake " Du er nesten gratis " else if (theWeekDay! = lørdag) så tilbake " Det er helg "! else if (theWeekDay = søndag) så tilbake " Slapp av, for i morgen skal vi jobbe ". annet avkastning " Hang der inne, det er ikke den helgen ennå "! slutten hvis [/Applescript]

Nok en gang, selv om du ikke er kjent med Applescript, den naturlige språket gjør det ganske lett å finne ut hva som skjer. Først setter vi en variabel til gjeldende ukedag. Deretter kjører vi gjennom en rekke tester ved hjelp av hvis
, else if Hotell og annet
å komme frem til en passende returmelding gitt dagens dag i uken.
"Else hvis" i aksjon.

På sikt skriptet vil prøve den første hvis
uttalelse. Hvis det viser seg sant, vil den første retur uttalelsen kjøres og scriptet vil opphøre (ingen ytterligere skritt er tatt). Men hvis den uttalelsen viser falsk, den første annet hvis
er prøvd, så den andre, og til slutt, hvis ingen av dem slår til, den siste annet
slår inn og returnerer en uttalelse om det blir ikke den helgen enda.

Slankere Code er bedre

annet hvis
strukturen er utrolig kraftig og gir deg mulighet til å gjøre rede for en rekke ulike scenarier. Som du koden opp visse prosjekter, kan du bli fristet til tider til kjeden sammen fem, ti eller femten annet hvis
uttalelser å bla gjennom alle tilgjengelige muligheter. Dessverre, dette er vanligvis ikke en god måte å kode og kan føre til massevis av unødvendige bloat.

Vær alltid oppmerksom når du bruker else if Hotell og spør deg selv om det er en bedre vei å gå om hva du prøver å oppnå. Det er ofte langt mer praktisk og kort til å bruke en løkke av noe slag, men det er en artikkel for en annen dag (kommer snart!).

dette eller hint?

En siste rask råd om Hvis
uttalelser. Et alternativ til annet
er å bruke eller
stedet. Her er en forenklet versjon av ukedag skriptet bruker eller Kjøpe og bare to mulige retur uttalelser.

[Applescript] satt theWeekDay til ukedag fra (dato)

if (theWeekDay = lørdag) eller (theWeekDay = søndag) så tilbake "! Det er helg " annet avkastning " Hang der inne, det er ikke den helgen ennå "! slutten hvis [/Applescript]

stay tuned

Dette dekker det meste av det du trenger å vite om conditionals. Crack åpne Applescript Editor og begynne å eksperimentere med dine egne betinget utsagn. Hva kule scripts kan du komme opp med?

Dette er bare toppen av den velkjente isfjellet så langt som vår dekning av Applescript. Dette er en utrolig ekspansiv tema som har et stort potensial for å øke din beherskelse over din Mac, så vi kommer til å ha mange flere gode Appleopplæringsprogrammer for å hjelpe deg å bli en sann automatisering ekspert. Anmeldelser