JavaScript 如何使用数组交换变量

JavaScript 如何使用数组交换变量

在编码中,交换两个变量的技术是指交换变量的值。在数组中,我们可以交换来自两个不同位置的变量。有无数种方法可以交换数组中的元素。让我们演示一些交换元素的方法,例如:

  • 使用临时变量
  • 一行交换
  • 使用算术运算符
  • 使用XOR位运算符

方法1:使用临时变量

我们引入一个新变量,并让它保存两个愿意交换的数组值之一(a)。我们让临时变量保存的数组值重新赋值为第二个数组值(b)。最后,将b(第二个变量)赋值为临时变量(a)的值。

语法:

function swap (int x, int y){
   temp = x;
   x = y;
   y = temp;
}

注意: 在处理数组时,x = a[i],y = a[j],而i和j是两个不同的索引。temp是一个临时变量。

示例:

Javascript

// Swapping array using temporary variable
let array = [10, 2, 5, 12, 7];
temp = array[1];
array[1] = array[0];
array[0] = temp;
 
console.log("Array after swapping : " + array);

输出

Array after swapping : 2,10,5,12,7

方法2:一行交换

在一行交换中,我们根据索引将要交换的数组值以列表的形式取出,并直接通过改变索引的方式来赋值给数组值。与艰难的方式不同,有一种非常简单的方法可以直接交换变量,同时重新分配相应的值。

语法:

[a[i], a[j]] = [a[j], a[i]]

注意: i和j是数组的任意两个索引。这是一种直接赋值的方法,而不是使用替代变量。

示例: 在下面的代码中,我们交换了索引0和1的值。

JavaScript

// Swapping first two elements of the array
let array = [10, 2, 5, 12, 7];
[array[0], array[1]] = [array[1], array[0]];
console.log("Array after swapping : " + array);

输出

Array after swapping : 2,10,5,12,7

方法3:使用算术运算符

在这种方法中,我们首先将两个数的和取出。假设我们的两个数是’a’和’b’。将两个数字的和赋值给’a’。变量b的值更新为’a-b’,而a的值更新为’a-b’。

语法: 初始值,a = 3, b = 5:

a = a + b // 8
b = a - b // 8-5=3
a = a - b // 8-3=5

最后,a的值将变为5,b的值将变为3。

示例:

Javascript

let a = 3, b = 5;
 
// Code to swap 'a' and 'b'
// a value changes to 8
a = a + b;
 
// b value changes to 3
b = a - b;
 
// a value changes to 5
a = a - b;
 
console.log(
    "After Swapping: x value is : "
    + a + " and b value is :" + b
);

输出

After Swapping: x value is : 5 and b value is :3

方法4:使用异或位运算符

在JavaScript中,位异或(^)运算符用于比较两个操作数并返回一个新的二进制数,如果操作数中的位都不同,则返回1,如果操作数中的位都相同,则返回0。该运算符由“|”符号表示。

示例:

Javascript

let a = 20;
let b = 60;
 
a = a ^ b;
b = a ^ b;
a = a ^ b;
 
console.log(a); // Output: 60
console.log(b); // Output: 20

输出

60
20

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程