#004 ActionScript [Q] Tips: reemplazar elementos de un array

Muchas veces veo como para realizar determinadas operaciones con arrays la gente emplea operaciones de intercambio, recorrido, etc. y no analiza a fondo las posibilidades que nos dan a veces los métodos de la clase Array.

En esta ocasión lo que veremos es cómo realizar inserciones en una posición dada, o intercambios de elementos. Para ello el método splice de la clase Array nos da unas cuantas posibilidades, ya que nos permite eliminar, añadir elementos a partir de una posición dada, intercambiar un elemento existente por otro nuevo, o incluso eliminar un grupo y poner en su lugar otro.

Para mostrar las posibilidades ponemos aqui un poquito de código (que es válido tanto para AS2 como para AS3):

var test_arr:Array = new Array("uno","XXX","YYY","cuatro","cinco");
trace("ARRAY INICIAL: "+test_arr);
// eliminar 2 elementos que no interesan
test_arr.splice(1,2);
trace("CONTENIDO ARRAY TEST: "+test_arr);
// añadir 2 elementos
test_arr.splice(1, 0, "DOSX", "TRESX");
trace("CONTENIDO ARRAY TEST: "+test_arr);
// intercambiar o lo que es lo mismo eliminar + añadir
test_arr.splice(1, 2, "dos", "tres");
trace("CONTENIDO ARRAY TEST: "+test_arr);

Como podéis ver con una simple línea podemos lograr varias operaciones que de usar el clásico pop, push, etc se complicarían bastante.

Tags