¿Cómo crear alternancia en JavaScript?

Autor: | Última modificación: 1 de agosto de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post:

A la hora de crear un proyecto de programación, hay muchas ocasiones en las que necesitaremos hacer que nuestros valores vayan alternando su posición en pantalla. Por ello, en este post, te enseñaremos cómo crear alternancia en JavaScript para, de este modo, modificar la posición de tus elementos.

¿Qué es alternancia?

Cuando hablamos de crear alternancia en JavaScript nos referimos a crear patrones dentro de una matriz en la que los elementos alternen su posición dentro de las variables. Este es el caso de un tablero de ajedrez, en el que los colores blanco y negro alternan su posición en las filas y columnas. Por ello, te invitamos a leer nuestro post sobre cómo crear un tablero de ajedrez en JavaScript para entender este concepto.

Crear alternancia en JavaScript también puede ser útil en algoritmos más complejos. Podemos usar esta herramienta, por ejemplo, en una competencia deportiva de todos contra todos. En las ligas de fútbol, tenemos una matriz en la que se unen las variables de jornada y partido para crear una planificación en la que todos los equipos compiten contra todos por lo menos dos veces.

Así como en el baloncesto, los partidos de fútbol tienen la particularidad de que un equipo juega como visitante y otro como local. Ser del equipo local presupone una ventaja al conocer la cancha. Por ello, es importante que esta variable se alterne entre los equipos, para que en los dos enfrentamientos no sea el mismo equipo el que tenga la ventaja. A continuación, te enseñaremos cómo crear alternancia en JavaScript a partir de este proyecto.

¿Cómo crear alternancia en JavaScript?

En nuestro post sobre programar un sistema de todos contra todos en JavaScript, te hemos enseñado los primeros pasos para crear este algoritmo. En él, hemos creado una función para los equipos que jugarán como visitantes. Los jugadores de away del primer partido de cada jornada serán los mismos siempre. A partir del segundo partido, los equipos cambiarán con base a un recorrido de su array. Para los equipos visitantes, este recorrido se basa en un decrecimiento a partir del penúltimo valor. Para los equipos locales, el recorrido sucederá en función del crecimiento del índice de su array.

Entonces, el resultado de esta función es el siguiente, a partir de un array ‘Teams’ con un número de elementos par:

arrayTeams [‘A’, ‘B’, ‘C’, ‘D’]

[ { home:’A’, away: ‘D’}, {home: ‘B’, away, ‘C’ } ],

[ { home:’C’, away: ‘D’}, {home: ‘A’, away, ‘B’ } ],

[ { home:’B’, away: ‘D’}, {home: ‘C’, away, ‘A’ } ],

Cada línea de código entre corchetes [ ] representa una jornada. Cada una de las jornadas contiene a su vez dos partidos. Como ves, aunque los partidos no se repiten, en el primer partido de cada jornada, ‘D’ siempre está de visitante, lo cual genera una desventaja.

Por ello, usaremos el mismo método de alternancia que hemos usado para resolver el tablero de ajedrez. Este método nos permite crear alternancia en JavaScript usando la lógica impar/par. O sea, crearemos un escenario cuando la jornada es par y otro cuando es impar.

Entonces, en el siguiente método establecemos que, cuando el índice de la jornada es impar, le damos la vuelta al primer partido de la jornada:

fixLastTeamSchedule ( ) {

this.matchDaySchedule.forEach ((matchDay, matchDayIndex => {

if (matchDayIndex % 2 ===1)

const firstMatch = matchDay [0]

const temp = firstMatch.home;

firstMatch.home = firstMatch.away;

firstMatch.away = temp;

}

En la función anterior, hemos usado el operador aritmético de módulo para definir una situación en la que el índice es impar. Luego, hemos usado las variables temporales o método swap para hacer que, bajo esta situación, se intercambien los valores de las variables home y away. De este modo, usar el if junto a un módulo impar o par nos permite crear alternancia en JavaScript.

¿Qué sigue?

Ahora que sabes cómo crear alternancia en JavaScript, te invitamos a seguir aprendiendo sobre este lenguaje de programación en nuestro Desarrollo Web Full Stack Bootcamp. Allí, en tan solo unos pocos meses, aprenderás todo lo necesario para convertirte en un experto del desarrollo web. ¡No te lo pierdas!

👉 Descubre más del Desarrollo Web Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.

¿Sabías que hay más de 40.000 vacantes para desarrolladores web sin cubrir en España? 

En KeepCoding llevamos desde 2012 guiando personas como tú a áreas de alta empleabilidad y alto potencial de crecimiento en IT con formación de máxima calidad.

 

Porque creemos que un buen trabajo es fuente de libertad, independencia, crecimiento y eso ¡cambia historias de vida!


¡Da el primer paso!