Array
Fonctions pour manipuler les tableaux de manière immutable et type-safe. Toutes les fonctions préservent le tableau original et retournent une nouvelle valeur.
Comment faire les imports ?
La bibliothèque expose les namespaces DArray et A depuis l'entrée principale ou en import direct (tree-shaking friendly), ce qui permet de ne charger que ce dont vous avez besoin.
import { DArray, A } from "@duplojs/utils";
import * as DArray from "@duplojs/utils/array";
import * as A from "@duplojs/utils/array";Création et conversion
from
Crée un tableau à partir d'un itérable ou d'un objet array-like.
toTuple
Convertit un tableau en tuple avec typage strict.
Accès aux éléments
at
Retourne l'élément à un index (supporte les index négatifs).
first
Retourne le premier élément du tableau.
last
Retourne le dernier élément du tableau.
length
Retourne la longueur du tableau.
lengthEqual
Vérifie qu'un tableau a une longueur exacte.
Recherche et test
includes
Vérifie si un tableau contient un élément.
notIncludes
Vérifie qu'un tableau ne contient pas une valeur donnée (type guard).
indexOf
Retourne l'index de la première occurrence d'un élément.
lastIndexOf
Retourne l'index de la dernière occurrence d'un élément.
isLastIndex
Indique si un index correspond au dernier élément du tableau.
find
Trouve le premier élément qui satisfait une condition.
findLast
Trouve le dernier élément qui satisfait une condition.
findIndex
Trouve l'index du premier élément qui satisfait une condition.
findLastIndex
Trouve l'index du dernier élément qui satisfait une condition.
every
Vérifie si tous les éléments satisfont une condition.
some
Vérifie si au moins un élément satisfait une condition.
is
Vérifie si une valeur est un tableau (type guard).
Transformation
map
Applique une fonction à chaque élément et retourne un nouveau tableau.
filter
Filtre les éléments selon une condition.
select
Filtre et transforme en une seule passe (avec inférence de la sortie).
slice
Extrait une portion du tableau sans le modifier.
flat
Aplatit un tableau imbriqué d'un niveau spécifié.
flatMap
Applique une fonction puis aplatit le résultat d'un niveau.
chunk
Découpe un tableau en blocs de taille fixe.
reverse
Inverse l'ordre des éléments du tableau.
sort
Trie les éléments du tableau.
Agrégation
reduce
Réduit le tableau à une seule valeur (de gauche à droite).
reduceRight
Réduit le tableau à une seule valeur (de droite à gauche).
join
Joint tous les éléments en une chaîne avec un séparateur.
group
Groupe les éléments selon une fonction de clé.
sum
Calcule la somme des éléments du tableau.
Min/Max
minOf
Retourne la valeur minimale selon une fonction de projection.
maxOf
Retourne la valeur maximale selon une fonction de projection.
minElements
Retourne le(s) élément(s) ayant la valeur minimale.
maxElements
Retourne le(s) élément(s) ayant la valeur maximale.
Modification
set
Modifie un élément à un index spécifique.
fill
Remplit une section du tableau avec une valeur.
fillAll
Remplit tout le tableau avec une valeur.
copyWithin
Copie une section du tableau vers un autre emplacement.
insert
Ajoute une valeur en fin de tableau (arguments inversés pour le currying).
Ajout et suppression
push
Ajoute un ou plusieurs éléments à la fin du tableau.
pop
Supprime et retourne le dernier élément.
unshift
Ajoute un ou plusieurs éléments au début du tableau.
shift
Supprime et retourne le premier élément.
concat
Concatène plusieurs tableaux ensemble.
spliceDelete
Supprime des éléments à partir d'un index.
spliceInsert
Insère des éléments à un index spécifique.
spliceReplace
Remplace des éléments à partir d'un index.
Recherche et modification
findAndReplace
Trouve un élément et le remplace par une nouvelle valeur.
findAndSpliceDelete
Trouve et supprime un élément.
findAndSpliceInsert
Trouve un élément et insère de nouveaux éléments.
findAndSpliceReplace
Trouve et remplace un élément via splice.
Utilitaires
coalescing
Retourne le premier élément non-null et non-undefined.
