JavaScript - Use Arrays to Swap Variables
Last Updated :
23 Jan, 2025
Here are the different methods to swap variables using arrays in JavaScript
1. Using Array Destructuring
Array destructuring is the most efficient and modern way to swap variables in JavaScript. This method eliminates the need for a temporary variable.
JavaScript
let x = 5;
let y = 10;
[x, y] = [y, x];
console.log(x);
console.log(y);
Here, the array [y, x] is unpacked, and the values of x and y are swapped in a single step.
2. Swapping More Than Two Variables
You can also use array destructuring to swap multiple variables.
JavaScript
let a = 1, b = 2, c = 3;
[a, b, c] = [c, a, b];
console.log(a);
console.log(b);
console.log(c);
This approach works seamlessly for swapping multiple variables in a single line of code.
3. Using Temporary Variable (Traditional Approach)
Before destructuring was introduced, a temporary variable was commonly used for swapping:
JavaScript
let x = 5;
let y = 10;
let temp = x;
x = y;
y = temp;
console.log(x);
console.log(y);
While effective, this approach is less concise and involves creating an additional variable.
4. Using Arithmetic Operator (Swapping Without a Temporary Variable)
You can also swap two numbers using arithmetic operations. This approach avoids using an array but may not work well for large numbers due to potential overflow.
JavaScript
let x = 5;
let y = 10;
x = x + y; // x becomes 15
y = x - y; // y becomes 5
x = x - y; // x becomes 10
console.log(x);
console.log(y);
While clever, this method is less readable and can introduce bugs in certain edge cases.
5. Swapping Variables in Arrays
If you’re working with arrays, you can use destructuring to swap elements directly.
JavaScript
const a = [10, 20, 30];
[a[0], a[2]] = [a[2], a[0]];
console.log(a);
This is especially useful when you need to rearrange elements in an array.
6. Swapping Variables in Objects
Although this doesn’t involve arrays directly, you can use destructuring with objects to swap values between two properties.
JavaScript
const obj = { x: 1, y: 2 };
[obj.x, obj.y] = [obj.y, obj.x];
console.log(obj);
This is a powerful way to manipulate object properties while swapping values.
7. Combining Swapping with Functions
Swapping variables using arrays can also be combined with functions to make the code reusable.
JavaScript
function swap([x, y]) {
return [y, x];
}
let [a, b] = swap([5, 10]);
console.log(a);
console.log(b);
This approach is modular and keeps your code clean, especially for repeated swaps.
Similar Reads
JavaScript - Find Index of a Value in Array Here are some effective methods to find the array index with a value in JavaScript.Using indexOf() - Most Used indexOf() returns the first index of a specified value in an array, or -1 if the value is not found. JavaScriptconst a = [10, 20, 30, 40, 50]; // Find index of value 30 const index = a.inde
2 min read
JavaScript - How to Get First N Elements from an Array? There are different ways to get the first N elements from array in JavaScript.Examples:Input:arr = [1, 2, 3, 4, 5, 6], n = 3 Output: [1, 2, 3] Input:arr = [6, 1, 4, 9, 3, 5, 7], n = 4Output: [6, 1, 4, 9]1. Using slice() MethodThe slice() method is used to extract a part of an array and returns a new
4 min read
How to Copy Array by Value in JavaScript ? There are various methods to copy array by value in JavaScript.1. Using Spread OperatorThe JavaScript spread operator is a concise and easy metho to copy an array by value. The spread operator allows you to expand an array into individual elements, which can then be used to create a new array.Syntax
4 min read
What is the most efficient way to concatenate N arrays in JavaScript ? In this article, we will see how to concatenate N arrays in JavaScript. The efficient way to concatenate N arrays can depend on the number of arrays and the size of arrays. To concatenate N arrays, we use the following methods:Table of ContentMethod 1: Using push() MethodMethod 2: Using concat() Met
3 min read
How to Merge Two Arrays and Remove Duplicate Items in JavaScript? Given two arrays, the task is to merge both arrays and remove duplicate items from merged array in JavaScript. The basic method to merge two arrays without duplicate items is using spread operator and the set constructor.1. Using Spread Operator and Set() ConstructorThe Spread Operator is used to me
3 min read
How to clone an array in JavaScript ? In JavaScript, cloning an array means creating a new array with the same elements as the original array without modifying the original array.Here are some common use cases for cloning an array:Table of ContentUsing the Array.slice() MethodUsing the spread OperatorUsing the Array.from() MethodUsing t
6 min read
JavaScript - Check if JS Array Includes a Value? To check if an array includes a value we can use JavaScript Array.includes() method. This method returns a boolean value, if the element exists it returns true else it returns false.1. Using Array.includes() Method - Mostly Used The JS array.includes() method returns true if the array contains the s
4 min read
JavaScript - Create an Object From Two Arrays Here are the different methods to create an object from two arrays in JavaScript1. Using for-each loopThe arr.forEach() method calls the provided function once for each element of the array. JavaScriptconst a1 = ['name', 'age', 'city']; const a2 = ['Ajay', 25, 'New Delhi']; const res = {}; a1.forEac
3 min read
How to remove falsy values from an array in JavaScript ? Falsy/Falsey Values: In JavaScript, there are 7 falsy values, which are given below falsezero(0,-0)empty string("", ' ' , ` `)BigIntZero(0n,0x0n)nullundefinedNaNIn JavaScript, the array accepts all types of falsy values. Let's see some approaches on how we can remove falsy values from an array in Ja
6 min read
JavaScript - Use Arrays to Swap Variables Here are the different methods to swap variables using arrays in JavaScript1. Using Array DestructuringArray destructuring is the most efficient and modern way to swap variables in JavaScript. This method eliminates the need for a temporary variable.JavaScriptlet x = 5; let y = 10; [x, y] = [y, x];
3 min read