let a = 12, b = 3;
[a, b] = [b, a];
En la programación en JavaScript, específicamente con ES6, hay una forma más eficiente y elegante de intercambiar los valores de dos variables sin la necesidad de una variable temporal adicional. Esto se logra mediante la desestructuración de arreglos, que es lo que se ilustra en el código de la pregunta:
let a = 12, b = 3;
[a, b] = [b, a];
Antes de la introducción de ES6, el intercambio de valores de variables se hacía comúnmente utilizando una variable temporal:
let a = 12, b = 3;
let temp = a;
a = b;
b = temp;
El código anterior hace uso de la variable temp
para mantener el valor original de a
antes de ser reemplazada por b
. Luego, b
toma el valor original de a
que se guardó en temp
.
Pero con ES6, el código se simplifica significativamente. En [a, b] = [b, a];
, los valores en el lado derecho del signo de igual se asignan a las variables en el lado izquierdo en su orden respectivo. Así, el valor de b
se asigna a a
y el valor de a
se asigna a b
, lo que efectivamente intercambia sus valores.
Este método de desestructuración de arreglos es una adición poderosa al cinturón de herramientas de un programador JavaScript gracias a ES6. No solo es útil para intercambiar valores de variables, sino también para asignar valores de un arreglo a variables de una manera más intuitiva y legible:
let arr = [1, 2, 3];
let [x, y, z] = arr; // x=1, y=2, z=3
Por lo tanto, la desestructuración de arreglos hace que el código sea más limpio y comprensible, y ayuda a reducir la posibilidad de errores. Sin duda, es una práctica recomendada a la hora de escribir código JavaScript contemporáneo.