В этом примере вы научитесь писать программу для обмена двумя переменными в JavaScript с использованием различных методов.
Чтобы понять этот пример, вы должны знать следующие темы программирования JavaScript:
- Переменные и константы JavaScript
- Операторы JavaScript
Пример 1: Использование временной переменной
//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)`);
Вывод
Введите первую переменную: 4 Введите вторую переменную: 2 Значение a после замены: 2 Значение b после замены: 4
Вот,
- Мы создали временную переменную для временного хранения значения.
- Мы присвоили a значение b.
- Значение temp присваивается b
В результате значения переменных меняются местами.
Примечание. Вы также можете поменять местами строки или другие типы данных, используя этот метод.
Пример 2: Использование 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)`);
Вывод
Введите первую переменную: 4 Введите вторую переменную: 2 Значение a после замены: 2 Значение b после замены: 4
Здесь новая функция es6, называемая деструктурирующим присваиванием (a, b) = (b, a)
, используется для обмена значениями двух переменных. Если (a, b) = (1, 2, 3)
значение a будет 1, а значение b будет 2 .
- Сначала создается временный массив (b, a). Здесь значение (b, a) будет
(2, 4)
. - Деструктурирующий массива выполняется, то есть
(a, b) = (2, 4)
.
В результате значения переменных меняются местами.
Вы можете узнать больше о деструктуризации в JavaScript Destructing Assignment.
Примечание . Вы также можете поменять местами строки или другие типы данных, используя этот метод.
Вы также можете поменять местами значения переменных с помощью арифметических операторов.
Пример 3: Использование арифметических операторов
//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)`);
Вывод
Введите первую переменную: 4 Введите вторую переменную: 2 Значение a после замены: 2 Значение b после замены: 4
Этот метод использует только две переменные и меняет местами значения переменных с помощью арифметических операторов +
и -
.
Здесь parseInt()
используется, потому что prompt()
принимает ввод от пользователя в виде строки. И когда добавляются числовые строки, он ведет себя как строка. Например, '2' + '3' = '23'
. Так parseInt()
преобразует числовую строку в число.
Чтобы узнать больше о преобразовании типов, перейдите в раздел Преобразования типов в JavaScript.
Давайте посмотрим, как программа выше меняет местами значения. Первоначально a равно 4, а b равно 2 .
a = a + b
присваивает значение4 + 2
a (теперь 6 ).b = a - b
присваивает значение6 - 2
b (теперь 4 ).a = a - b
присвоить значение6 - 4
a (теперь 2).
Наконец, a равно 2, а b равно 4 .
Примечание . Вы можете использовать арифметические операторы ( +
, -
), если обе переменные имеют числовой тип.
Пример 4: Использование побитового оператора 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)`);
Вывод
Введите первую переменную: 4 Введите вторую переменную: 2 Значение a после замены: 2 Значение b после замены: 4
Побитовый оператор true
XOR определяет, различны ли оба операнда. Чтобы узнать больше о побитовых операторах, посетите побитовые операторы JavaScript.
Давайте посмотрим, как программа выше меняет местами значения. Первоначально a равно 4, а b равно 2 .
a = a b
присваивает значение4 2
a (теперь 6 ).b = a b
присваивает значение6 2
b (теперь 4 ).a = a b
присвоить значение6 4
a (теперь 2).
Наконец, a равно 2, а b равно 4 .
Примечание . Этот метод можно использовать только для целых (целых) значений.