VBScript Operators: Logisk (AND, OR) aritmetikk, sammenligningseksempel
VBScript Operatorer
An Operator fungerer enten på verdier eller variabler for å utføre en oppgave. Operatorer er svært avgjørende i programmering fordi du ikke kan tilordne verdier til variabler eller utføre oppgaver uten dem.
Anta at du vil beregne summen av to variabler a og b og lagre resultatet i en annen variabel c.
c = a + b
Her er a, b og c operander og + og = er operatorene.
Det er hovedsakelig tre typer operatorer i VBScript: Arithmetic, Comparison og Logical Operators.
VBScript aritmetikk Operatorer
VBS Aritmetiske operatorer, som navnet indikerer, brukes til aritmetiske beregninger.
Ulike aritmetiske operatorer er
- + (tillegg)
- – (subtraksjon)
- * (multiplikasjon)
- / (divisjon)
- % (modul)
- ^ (eksponentiering)
- & (sammenkobling)
Du er kanskje kjent med de fire første aritmetiske operatorene ettersom vi bruker dem ofte.
Modulusoperatoren brukes til å finne resten etter en divisjon. For eksempel er 10%3 lik 1.
Eksponentieringsoperatoren tilsvarer "kraften til" i matematikk. For eksempel er 2^3 lik 8.
Sammenkoblingsoperatoren brukes til å sette sammen to strengverdier.
For eksempel, "Hello" og "John" vil returnere "Hello John".
VBScript-sammenligning Operatorer
Sammenligningsoperatorer brukes til å sammenligne to verdier.
Ulike sammenligningsoperatorer er == , <>, < , >, <= og >=. Anta at du har to variabler a og b med henholdsvis verdiene 5 og 9, så vil resultatene for følgende sammenligning være slik:
a==b will return false. a<>b will return true. a<b will return true. a>b will return false. a<=b will return true. a>=b will return false.
VBScript logiske operatorer: AND, OR
Logiske operatorer brukes for logiske operasjoner.
Noen av de logiske operatorene er AND, OR, NOT og XOR.
Anta at du har to variabler x og y med verdier henholdsvis sann og usann, så vil resultatene for følgende logiske operasjoner være slik:
x AND y will return false. x OR y will return true. NOT(x OR y) will return false. x XOR y will return true.
Kodeeksempel
Trinn 1) Kopier følgende kode inn i et redigeringsprogram
<html> <head> <script type="text/vbscript"> Dim num1,num2 num1=20 num2=3 document.write(num1 & " + " & num2 & " = " & num1+num2 & "<br />") document.write(num1 & " - " & num2 & " = " & num1-num2 & "<br />") document.write(num1 & " * " & num2 & " = " & num1*num2 & "<br />") document.write(num1 & " / " & num2 & " = " & num1/num2 & "<br />") document.write(num1 & " ^ " & num2 & " = " & num1^num2 & "<br />") document.write(num1 & " Mod " & num2 & " = " & num1 Mod num2 & "<br />") document.write("John" & " & " & "Smith" & " = "& "John" & " Smith" & "<br />") Dim num3,num4 num3=7 num4=13 If (num3=num4) Then document.write(num3 & " == " & num4 & " returns true." & "<br />") Else document.write(num3 & " == " & num4 & " returns false." & "<br />") End If If (num3<>num4) Then document.write(num3 & " <> " & num4 & " returns true." & "<br />") Else document.write(num3 & " == " & num4 & " returns false." & "<br />") End If If (num3<num4) Then document.write(num3 & " < " & num4 & " returns true." & "<br />") Else document.write(num3 & " < " & num4 & " returns false." & "<br />") End If If (num3>num4) Then document.write(num3 & " > " & num4 & " returns true." & "<br />") Else document.write(num3 & " > " & num4 & " returns false." & "<br />") End If If (num3<=num4) Then document.write(num3 & " <= " & num4 & " returns true." & "<br />") Else document.write(num3 & " <= " & num4 & " returns false." & "<br />") End If If (num3>=num4) Then document.write(num3 & " >= " & num4 & " returns true." & "<br />") Else document.write(num3 & " >= " & num4 & " returns false." & "<br />") End If Dim bool1,bool2 bool1=false bool2=true If (bool1 AND bool2) Then document.write(bool1 & " AND " & bool2 & " returns true." & "<br />") Else document.write(bool1 & " AND " & bool2 & " returns false." & "<br />") End If If (bool1 OR bool2) Then document.write(bool1 & " OR " & bool2 & " returns true." & "<br />") Else document.write(bool1 & " OR " & bool2 & " returns false." & "<br />") End If If NOT(bool1 OR bool2) Then document.write("NOT (" & bool1 & " OR " & bool2 & " ) returns true." & "<br />") Else document.write("NOT (" & bool1 & " OR " & bool2 & " ) returns false." & "<br />") End If If (bool1 XOR bool2) Then document.write(bool1 & " XOR " & bool2 & " returns true." & "<br />") Else document.write(bool1 & " XOR " & bool2 & " returns false." & "<br />") End If </script> </head> <body> </body> </html>
Trinn 2) Lagre filen som operator.html på ønsket sted. Åpne nå filen i Internet Explorer og skjermen vil se slik ut.
Hva er Operator forrang?
Når flere operatorer forekommer i et uttrykk, blir hver del evaluert i en forhåndsbestemt rekkefølge kalt operatorprioritet. Når uttrykk inneholder operatorer fra mer enn én kategori-
- aritmetiske operatorer blir evaluert først
- sammenligningsoperatører blir evaluert deretter
- logiske operatorer evalueres sist
Sammenligningsoperatører har alle lik forrang; det vil si at de blir evaluert i venstre-til-høyre rekkefølgen de vises i.
Aritmetiske operatorer blir evaluert i følgende rekkefølge:
- eksponensieringen
- multiplikasjon
- divisjon
- modul
- addisjon og subtraksjon
- og til slutt sammenkobling.
Logiske operatorer blir evaluert i følgende rekkefølge:
- IKKE
- OG
- OR
- XOR.
Du kan bruk parenteser (åpnings- og lukkeparenteser) for å endre den vanlige prioritetsrekkefølgen slik du ønsker. Innenfor parentes opprettholdes normal operatørprioritet.
For eksempel, hvis du prøver å beregne uttrykket a = 5-2*2/5^3, hva forventer du som resultat? Resultatet blir 4.968. Hvordan? Eksponentiseringen kommer først, så kommer multiplikasjon og divisjon og til slutt kommer subtraksjon. Så uttrykket ovenfor blir beregnet slik: 5-2*2/(5^3) –> 5-(2*2)/125 –> 5-(4/125) –> 5-.032 –> 4.968.
Anta at du først vil beregne 5-2, så skal du skrive uttrykket som a = (5-2)*2/5^3. Nå får du verdien av som a som 3*2/5^3 –> 3*2/125–>6/125 –> 0.048. Du kan prøve koden nedenfor.
Kodeeksempel
Trinn 1) Kopier følgende kode inn i et redigeringsprogram
<html> <head> <script type="text/vbscript"> Dim a a = 5-2*2/5^3 document.write(a) </script> </head> <body> </body> </html>
Trinn 2) Lagre filen som precedence.html på ønsket sted. Åpne nå filen i Internet Explorer og skjermen vil se slik ut.
Trinn 3) Endre uttrykket a til (5-2)*2/5^3 og lagre filen. Kontroller nå utgangen og utgangen din vil være slik:
VBScript-konstanter
Mens du koder i VBS, må du kanskje bruke konstanter til tider. En konstant er et meningsfylt navn som erstatter et tall eller en streng som aldri vil endres. Tenk deg for eksempel at du vil bruke konstanten ? i koden din. Det er åpenbart at verdien av konstanten ? vil ikke endre seg. Så du kan lage en konstant kalt "pi" og bruke den hvor du vil. Du må bruke nøkkelordet "const" for å erklære en konstant. For eksempel kan du deklarere en konstant kalt pi og tilordne verdien av ? til det slik:
const pi = 3.14
Etter å ha erklært en konstant, hvis du prøver å endre verdien, vil du få en feil.
Når du navngir konstantene, må du være forsiktig så du ikke bruker de forhåndsdefinerte VBScript-konstantene. Det beste forebyggende tiltaket er å unngå navn som begynner med vb fordi alle forhåndsdefinerte VBScript-konstanter starter med vb. Noen eksempler er vbRed, vbSunday, vbArray og så videre. Du kan bruke disse forhåndsdefinerte VBScript-konstantene i koden din som du vil.
Prøv koden nedenfor for å gjøre konseptet klarere.
Kodeeksempel
<html> <head> <script type="text/vbscript"> Dim intRadius intRadius = 20 const pi=3.14 area = pi*intRadius^2 document.write(area) </script> </head> <body> </body> </html>
Lagre filen som constant.html på ønsket sted. Åpne nå filen i Internet Explorer og skjermen vil se slik ut.
Sammendrag
- Operatorer brukes til å tildele verdier til variabler eller utføre ulike typer oppgaver. Det er hovedsakelig tre typer operatører i VBScript: Aritmetikk, sammenligning og logisk Operators.
- Operator-prioritet er rekkefølgen som operatorer evalueres normalt i når flere operasjoner forekommer i et uttrykk. Du kan bruke parentes til å overstyre operatørens prioritet.
- En konstant er et meningsfylt navn som erstatter et tall eller en streng som aldri vil endres.