V tomto příkladu se naučíte psát program pro výměnu dvou proměnných v JavaScriptu pomocí různých metod.
Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:
- Proměnné a konstanty JavaScriptu
- Provozovatelé JavaScriptu
Příklad 1: Použití dočasné proměnné
//JavaScript program to swap two variables //take input from the users let a = prompt('Enter the first variable: '); let b = prompt('Enter the second variable: '); //create a temporary variable let temp; //swap variables temp = a; a = b; b = temp; console.log(`The value of a after swapping: $(a)`); console.log(`The value of b after swapping: $(b)`);
Výstup
Zadejte první proměnnou: 4 Zadejte druhou proměnnou: 2 Hodnota a po výměně: 2 Hodnota b po výměně: 4
Tady,
- Vytvořili jsme dočasnou proměnnou pro dočasné uložení hodnoty.
- Hodnotu b jsme přiřadili a.
- Hodnota teploty je přiřazena b
Výsledkem je, že hodnota proměnných je zaměněna.
Poznámka: Pomocí této metody můžete také vyměnit řetězce nebo jiné datové typy.
Příklad 2: Použití přiřazení destrukce es6 (ES2015)
//JavaScript program to swap two variables //take input from the users let a = prompt('Enter the first variable: '); let b = prompt('Enter the second variable: '); //using destructuring assignment (a, b) = (b, a); console.log(`The value of a after swapping: $(a)`); console.log(`The value of b after swapping: $(b)`);
Výstup
Zadejte první proměnnou: 4 Zadejte druhou proměnnou: 2 Hodnota a po výměně: 2 Hodnota b po výměně: 4
Zde se používá nová funkce es6, zvaná destrukční přiřazení (a, b) = (b, a)
, k výměně hodnoty dvou proměnných. Pokud (a, b) = (1, 2, 3)
, hodnota a bude 1 a hodnota b bude 2 .
- Nejprve se vytvoří dočasné pole (b, a). Zde bude hodnota (b, a)
(2, 4)
. - Destrukce pole se provádí, tzn
(a, b) = (2, 4)
.
Výsledkem je, že hodnota proměnných je zaměněna.
Další informace o destrukci najdete v dokumentu Destrukční přiřazení JavaScriptu.
Poznámka : Pomocí této metody můžete také vyměnit řetězce nebo jiné datové typy.
Hodnoty proměnné můžete také vyměnit pomocí aritmetických operátorů.
Příklad 3: Použití aritmetických operátorů
//JavaScript program to swap two variables //take input from the users let a = parseInt(prompt('Enter the first variable: ')); let b = parseInt(prompt('Enter the second variable: ')); // addition and subtraction operator a = a + b; b = a - b; a = a - b; console.log(`The value of a after swapping: $(a)`); console.log(`The value of b after swapping: $(b)`);
Výstup
Zadejte první proměnnou: 4 Zadejte druhou proměnnou: 2 Hodnota a po výměně: 2 Hodnota b po výměně: 4
Tato metoda používá pouze dvě proměnné a vymění hodnotu proměnných pomocí aritmetických operátorů +
a -
.
Zde parseInt()
se používá, protože prompt()
bere vstup od uživatele jako řetězec. A když jsou přidány číselné řetězce, chová se to jako řetězec. Například '2' + '3' = '23'
. Takže parseInt()
převede číselný řetězec na číslo.
Další informace o převodu typů najdete v části Převody typů JavaScriptu.
Podívejme se, jak výše uvedený program zaměňuje hodnoty. Zpočátku a je 4 ab je 2 .
a = a + b
přiřadí hodnotu4 + 2
a (nyní 6 ).b = a - b
přiřadí hodnotu6 - 2
b (nyní 4 ).a = a - b
přiřadit hodnotu6 - 4
a (nyní 2).
Nakonec a je 2 ab je 4 .
Poznámka : Pokud jsou obě proměnné číselného typu, můžete použít aritmetické operátory ( +
, -
).
Příklad 4: Použití bitového operátoru XOR
//JavaScript program to swap two variables //take input from the users let a = prompt('Enter the first variable: '); let b = prompt('Enter the second variable: '); // XOR operator a = a b b = a b a = a b console.log(`The value of a after swapping: $(a)`); console.log(`The value of b after swapping: $(b)`);
Výstup
Zadejte první proměnnou: 4 Zadejte druhou proměnnou: 2 Hodnota a po výměně: 2 Hodnota b po výměně: 4
Bitový operátor XOR vyhodnotí, true
zda jsou oba operandy odlišné. Další informace o bitových operátorech najdete v bitových operátorech JavaScriptu.
Podívejme se, jak výše uvedený program zaměňuje hodnoty. Zpočátku a je 4 ab je 2 .
a = a b
přiřadí hodnotu4 2
a (nyní 6 ).b = a b
přiřadí hodnotu6 2
b (nyní 4 ).a = a b
přiřadit hodnotu6 4
a (nyní 2).
Nakonec a je 2 ab je 4 .
Poznámka : Tuto metodu můžete použít pouze pro celé číslo (celé číslo) hodnoty.