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

7 de August, 2009. Escrito por [Q]boss en AS3, Flash, Flash Lite, Recursos, [Q] Tips, [Q] interactiva

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):

Actionscript:
  1. var test_arr:Array = new Array("uno","XXX","YYY","cuatro","cinco");
  2. trace("ARRAY INICIAL: "+test_arr);
  3. // eliminar 2 elementos que no interesan
  4. test_arr.splice(1,2);
  5. trace("CONTENIDO ARRAY TEST: "+test_arr);
  6. // añadir 2 elementos
  7. test_arr.splice(1, 0, "DOSX", "TRESX");
  8. trace("CONTENIDO ARRAY TEST: "+test_arr);
  9. // intercambiar o lo que es lo mismo eliminar + añadir
  10. test_arr.splice(1, 2, "dos", "tres");
  11. 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.

Comments

Leave a Reply