Cómo revertir una matriz en JavaScript

Cómo revertir una matriz en JavaScript

Revertir una matriz es un problema de codificación muy popular que a menudo se hace como una pregunta de entrevista al solicitar una posición de desarrollador de JavaScript de nivel de entrada. A veces se le pedirá que modifique la matriz original para que el primer elemento se convierta en el último y el segundo elemento se convierta en el segundo último elemento de la matriz y así sucesivamente. A veces se le puede pedir que revertir una matriz sin cambiar la matriz original.

En esta publicación veremos diferentes métodos que se utilizan para revertir una matriz en JavaScript; Estos métodos incluirán los métodos que reverten la matriz original, así como los métodos que pueden usarse para hacer una nueva matriz inversa.

Cómo usar el método JavaScript Reverse ()

El método inverso en JavaScript se usa para revertir los índices del contenido de una matriz de tal manera que el último elemento de la matriz se convierte en el primer elemento de la matriz y viceversa:

Sintaxis

formación.contrarrestar()

El método inverso de JavaScript no toma ningún parámetro y se usa en combinación con el nombre de la matriz. Veamos un ejemplo del método inverso:

Deje empleareenames = ['John', 'Jack', 'Chris', 'Hank'];
consola.Registro (Empleado de los nombres.contrarrestar());

Nota: Este método modifica la cadena original.

Cómo revertir los elementos de la matriz sin cambiar la matriz original

Como se mencionó anteriormente, el método inverso modifica la matriz original. Entonces, si desea revertir la matriz sin modificar la matriz original, tendrá que usar otro método. Desafortunadamente, JavaScript no tiene un solo método específico para esta funcionalidad, sino que tenemos que usar una combinación de diferentes métodos para realizar esta función.

El primer método que aprenderemos es usar el operador de propagación junto con el método inverso. Primero, copiará la matriz utilizando el operador spread y luego llamará al método inverso en la matriz recién creada:

Deje empleareenames = ['John', 'Jack', 'Chris', 'Hank'];
Deje que se reverse = [... Empleeseenames].contrarrestar();
consola.log (empleado de los nombres);
consola.log (reversarr);

También podemos usar los métodos de empuje y desagüe en combinación con un bucle for para revertir una matriz sin modificar la matriz original:

Deje empleareenames = ['John', 'Jack', 'Chris', 'Hank'];
Deje reversear = [];
para (deja i = 0; yo <= employeeNames.length - 1; i++)
reversear.Unchift (Employeenames [i]);

consola.log (reversarr);

En el ejemplo anterior, comenzamos el bucle desde i = 0 cuando la indexación de matriz comienza en 0; Luego establecemos la condición como yo <= employeeNames.length - 1 as the highest index in an array will always be one number less than the total number of elements in the array.

Dentro del bucle FOR Utilizamos la función Unphift para agregar los elementos de la matriz Employeenames a la nueva matriz de reversiones. En la primera iteración del bucle, la i es igual a 0, por lo que los nombres de empleo [i] selecciona el primer elemento de la matriz y la función de desagüe lo coloca en el primer índice de la reversión. En la segunda iteración, I es igual a 1, por lo que Employeenames [i] selecciona el segundo elemento de la matriz y la función de desplazamiento lo coloca en el primer índice. El elemento previamente presente en el primer índice ahora pasa al segundo índice. Este proceso seguirá repitiendo hasta que llegue al último elemento y se invierte toda la matriz.

También podemos usar el método de empuje para revertir una matriz de la misma manera, pero para eso tendremos que usar una disminución para el índice de bucle.

Deje empleareenames = ['John', 'Jack', 'Chris', 'Hank'];
Deje reversear = [];
para (deje que los equipos de empleo.Longitud - 1; i> = 0; i--)
reversear.Push (Employeenames [i]);

consola.log (reversarr);

Conclusión

Revertir los elementos de una matriz es uno de esos desafíos de codificación que todos deberían intentar cuando son nuevos en los idiomas de programación/secuencia de comandos de aprendizaje; A menudo se pregunta al codificar cuestionarios y entrevistas.

En esta publicación utilizamos el método inverso incorporado para revertir una matriz de JavaScript; Este método modifica la matriz original, por lo que también aprendimos otros métodos en los que podríamos revertir una matriz mientras preservamos la matriz original. Para ese propósito, aprendimos a usar el operador de propagación y los métodos de empuje, desanimado en combinación con bucles.