Volver a la página principal
sábado 5 octubre 2024
47

5 Formas de Intercambiar Dos Variables Sin Usar una Tercera Variable en JavaScript

Intercambiar variables es una tarea común en la programación, y hay varias formas de hacerlo sin utilizar una tercera variable. En este artículo, exploraremos cinco métodos diferentes en JavaScript, cada uno con una explicación detallada.

1. Suma y Resta

Este método implica operaciones aritméticas simples:

a = 20;
b = 40;

a = a + b;
b = a - b;
a = a - b;

console.log('Después de Suma y Resta:');
console.log('a:', a); // 40
console.log('b:', b); // 20

Explicación:

  • a = a + b; combina los valores de a y b y almacena el resultado en a.
  • b = a - b; resta el nuevo valor de b (que es a) de a para obtener el valor original de a.
  • a = a - b; resta el nuevo valor de b (el valor original de a) de a para obtener el valor original de b.

2. Multiplicación y División

Otro método aritmético, pero utilizando multiplicación y división. Ten en cuenta que este método asume que a y b no son cero para evitar la división por cero:

a = 20;
b = 40;

a = a * b;
b = a / b;
a = a / b;

console.log('Después de Multiplicación y División:');
console.log('a:', a); // 40
console.log('b:', b); // 20

Explicación:

  • a = a * b; multiplica los valores de a y b y almacena el resultado en a.
  • b = a / b; divide el nuevo valor de a por b para obtener el valor original de a.
  • a = a / b; divide el nuevo valor de a por el nuevo valor de b para obtener el valor original de b.

3. Usando XOR a Nivel de Bits

Las operaciones a nivel de bits también se pueden usar para intercambiar variables:

a = 20; 
b = 40;

a = a ^ b;
b = a ^ b;
a = a ^ b;

console.log('Después de XOR a Nivel de Bits:');
console.log('a:', a); // 40
console.log('b:', b); // 20

Explicación:

  • a = a ^ b; almacena el resultado del XOR a nivel de bits entre a y b en a.
  • b = a ^ b; almacena el resultado del XOR a nivel de bits entre el nuevo a y b (que es el valor original de a) en b.
  • a = a ^ b; almacena el resultado del XOR a nivel de bits entre el nuevo a y b (que es el valor original de b) en a.

4. Usando Desestructuración de Arreglos

Un enfoque más moderno y elegante en JavaScript utiliza la desestructuración de arreglos:

a = 20;
b = 40;

[a, b] = [b, a];

console.log('Después de Desestructuración de Arreglos:');
console.log('a:', a); // 40
console.log('b:', b); // 20

Explicación:

[a, b] = [b, a]; intercambia los valores de a y b utilizando la asignación por desestructuración de arreglos. Este es un método conciso y legible para intercambiar variables en JavaScript moderno.

5. Intercambio con Asignación Compuesta (Intercambio en Una Línea)

Este ingenioso método utiliza una combinación de aritmética y asignación en una sola línea:

a = 20;
b = 40;

a = a + b - (b = a);

console.log('Después de Intercambio con Asignación Compuesta:');
console.log('a:', a); // 40
console.log('b:', b); // 20

Explicación:

  • a = a + b - (b = a); puede parecer complejo, pero sigue una secuencia específica de operaciones debido a cómo JavaScript evalúa las expresiones. Así es como funciona:
  • (b = a) asigna el valor de a a b.
  • Luego, a + b - (b = a) se convierte en a + a - a, lo que efectivamente intercambia los valores de a y b.

En resumen, cada uno de estos métodos logra el mismo resultado de intercambiar las variables a y b sin utilizar una tercera variable, demostrando diferentes técnicas en JavaScript.

Etiquetas:
javascript
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer