VBScript Operators: Logická (AND, OR) aritmetika, srovnávací příklad
VBScript Operatorů
An Operator pracuje buď na hodnotách nebo proměnných, aby provedl nějaký úkol. Operatory jsou při programování velmi důležité, protože bez nich nemůžete přiřazovat hodnoty proměnným ani provádět úkoly.
Předpokládejme, že chcete vypočítat součet dvou proměnných aab a uložit výsledek do jiné proměnné c.
c = a + b
Zde jsou a, b a c operandy a + a = jsou operátory.
Ve VBScriptu existují hlavně tři druhy operátorů: aritmetické, komparační a logické Operatorů.
Aritmetika VBScript Operatorů
Aritmetické operátory VBS, jak název napovídá, se používají pro aritmetické výpočty.
Jsou různé aritmetické operátory
- + (dodatek)
- – (odčítání)
- * (násobení)
- / (divize)
- % (modul)
- ^ (umocnění)
- & (zřetězení)
Možná znáte první čtyři aritmetické operátory, protože je běžně používáme.
Operátor modulu se používá k nalezení zbytku po dělení. Například 10%3 se rovná 1.
Operátor umocňování je v matematice ekvivalentní „moci“. Například 2^3 se rovná 8.
Operátor zřetězení se používá ke zřetězení dvou řetězcových hodnot.
Například, „Ahoj“ a „John“ vrátí „Ahoj Johne“.
Porovnání VBScript Operatorů
Porovnávací operátory se používají k porovnání dvou hodnot.
Různé porovnávací operátory jsou == , <>, < , >, <= a >=. Předpokládejme, že máte dvě proměnné a a b s hodnotami 5 a 9, pak budou výsledky pro následující srovnání vypadat takto:
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 Logické operátory: AND, OR
Pro logické operace se používají logické operátory.
Některé z logických operátorů jsou AND, OR, NOT a XOR.
Předpokládejme, že máte dvě proměnné x a y s hodnotami true a false, pak výsledky pro následující logické operace budou vypadat takto:
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.
Příklad kódu
Krok 1) Zkopírujte následující kód do editoru
<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>
Krok 2) Uložte soubor jako operator.html ve vámi preferovaném umístění. Nyní otevřete soubor v Internet Exploreru a vaše obrazovka bude vypadat takto.
Co je to Operator Precedence?
Když se ve výrazu vyskytuje několik operátorů, každá část je vyhodnocena v předem určeném pořadí, které se nazývá priorita operátorů. Když výrazy obsahují operátory z více než jedné kategorie-
- aritmetické operátory jsou vyhodnoceny jako první
- dále jsou vyhodnoceny srovnávací operátory
- logické operátory se vyhodnocují jako poslední
Všechny porovnávací operátory mají stejnou prioritu; to znamená, že jsou vyhodnocovány v pořadí zleva doprava, v jakém se objevují.
Aritmetické operátory se vyhodnocují v následujícím pořadí:
- umocňování
- násobení
- divize
- modul
- sčítání a odčítání
- a nakonec zřetězení.
Logické operátory se vyhodnocují v následujícím pořadí:
- NENÍ
- A AUTOMATIZACI
- OR
- XOR
Můžeš použijte závorky (otevírací a uzavírací závorky) ke změně normálního pořadí priority na požadovaný způsob. V závorkách je zachována normální priorita operátorů.
Pokud se například pokusíte vypočítat výraz a = 5-2*2/5^3, jaký výsledek očekáváte? Výsledek bude 4.968. Jak? Nejdříve přichází umocňování, pak násobení a dělení a nakonec odčítání. Výše uvedený výraz se tedy vypočítá takto: 5-2*2/(5^3) –> 5-(2*2)/125 –> 5-(4/125) –> 5-,032 –> 4.968.
Předpokládejme, že chcete nejprve vypočítat 5-2, pak byste měli výraz napsat jako a = (5-2)*2/5^3. Nyní získáte hodnotu jako 3*2/5^3 –> 3*2/125–>6/125 –> 0.048. Můžete vyzkoušet níže uvedený kód.
Příklad kódu
Krok 1) Zkopírujte následující kód do editoru
<html> <head> <script type="text/vbscript"> Dim a a = 5-2*2/5^3 document.write(a) </script> </head> <body> </body> </html>
Krok 2) Uložte soubor jako precedence.html ve vámi preferovaném umístění. Nyní otevřete soubor v Internet Exploreru a vaše obrazovka bude vypadat takto.
Krok 3) Změňte výraz a na (5-2)*2/5^3 a soubor uložte. Nyní zkontrolujte výstup a váš výstup bude takto:
Konstanty VBScript
Při kódování ve VBS možná budete muset občas používat konstanty. Konstanta je smysluplný název, který nahrazuje číslo nebo řetězec, který se nikdy nezmění. Předpokládejme například, že chcete použít konstantu ? ve vašem kódu. Je zřejmé, že hodnota konstanty ? se nezmění. Můžete tedy vytvořit konstantu s názvem „pi“ a použít ji, kdekoli chcete. Chcete-li deklarovat konstantu, musíte použít klíčové slovo „const“. Můžete například deklarovat konstantu s názvem pi a přiřadit jí hodnotu ? k tomu takto:
const pi = 3.14
Pokud se po deklaraci konstanty pokusíte změnit její hodnotu, dostanete chybu.
Při pojmenovávání konstant musíte být opatrní, abyste nepoužili předdefinované konstanty VBScript. Nejlepší preventivní opatření je vyhnout se názvům začínajícím na vb, protože všechny předdefinované konstanty VBScript začínají na vb. Některé příklady jsou vbRed, vbSunday, vbArray a tak dále. Tyto předdefinované konstanty VBScript můžete ve svém kódu použít, jak chcete.
Vyzkoušejte níže uvedený kód, aby byl koncept jasnější.
Příklad kódu
<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>
Uložte soubor jako konstantní.html ve vámi preferovaném umístění. Nyní otevřete soubor v Internet Exploreru a vaše obrazovka bude vypadat takto.
Shrnutí
- Operatory se používají k přiřazování hodnot proměnné nebo vykonávat různé druhy úkolů. Existují především tři druhy operátorů VBScript: Aritmetika, srovnávání a logika Operatorů.
- Operapriorita tor je pořadí, ve kterém jsou operátory normálně vyhodnoceny, když se ve výrazu vyskytuje několik operací. K přepsání priority operátorů můžete použít závorky.
- Konstanta je smysluplný název, který nahrazuje číslo nebo řetězec, který se nikdy nezmění.