4D v16 R6 proporciona capacidades avanzadas para manipular colecciones, gracias a una serie de métodos que se utilizan con la Notación Objeto. Ahora se dispone de más de 40 métodos que permiten, por ejemplo, la posibilidad de añadir o eliminar elementos en una colección, ordenarla, buscar los elementos en ella y ¡mucho más! Hay tantas posibilidades nuevas que es imposible presentarlas en un solo post. Este post es el primero de una serie que no querrás perderte…
¿Cómo llamar a los métodos de la Colección?
Un método asociado a una colección sólo es accesible con la Notación Objeto, por lo que se proporciona como una vista previa en 4D v16 R6. El siguiente ejemplo le da una idea de cómo es el código . Por ejemplo, así es como el método push permite añadir elementos a la colección $col .
$col.push(10;100) // Añadir 10 y 100 a la colección
$s:=$col.sum() // Suma de todos los elementos de la colección
$r:=$col.pop() // Leer y eliminar el último elemento
una vasta lista de manipulaciones
- Añadir elementos: push, insert, unshift, resize y fill
- Eliminar elementos: pop, shift, remove y clear
- Ordenar elementos: orderBy, orderByMethod, sort y reverse
- Calcular en colecciones: countValues, sum, average, count, min, max y reduce
- Comparar colecciones: equal
- Copiar e insertar en colecciones: copy, concat, combine, slice y distinct
- Buscar en colecciones indexOf, lastIndexOf, find, findIndex, filter, query, indices, every y some
- Extraer elementos de las colecciones: extract, map
- Manipular cadenas: Split string y join
Para conocer todos los detalles de cada método, echa un vistazo al capítulo «colecciones » del manual del lenguaje.
CONVERSIÓN A ARRAYS
Para una migración fluida a las colecciones, dos nuevos comandos COLLECTION TO ARRAY y ARRAY TO COLLECTIONque te ayudarán a escribir el nuevo código junto con el que ya tienes, y hacer que funcionen juntos fácilmente.
¿qué sigue?
De acuerdo, ha sido un post bastante general, pero teníamos que darte la visión general antes de ir más allá. La próxima entrada del blog entrará en más detalle y demostrará múltiples formas de insertar o eliminar elementos de una colección.