Fonctions
Les fonctions jouent un rôle clé dans la manipulation et la transformation des données dans PandaSuite. Elles permettent d’effectuer des opérations spécifiques sur différents types de données, tels que les nombres, les chaînes de caractères, les dates et les tableaux.
Comprendre le rôle des fonctions
Une fonction prend des paramètres qui déterminent son comportement. Ces paramètres indiquent sur quelles données la fonction doit agir et peuvent inclure des options spécifiques à l’opération. Une fois exécutée, la fonction retourne un résultat qui peut être utilisé dans l’application.
Certaines fonctions ne sont compatibles qu’avec des types de données spécifiques. Par exemple, une fonction mathématique ne pourra pas être appliquée à une chaîne de caractères sans conversion préalable.
Fonctions générales
Evaluate
Évalue une expression et retourne le résultat.
Paramètre : Expression (chaîne de caractères contenant une opération mathématique ou logique)
Retourne : Vrai ou faux
By Key
Renvoie la valeur d’un élément à partir de sa clé.
Paramètre : Clé
Retourne : Valeur associée à la clé
By Index
Renvoie la valeur d’un élément à partir de son index (le premier élément est indexé à 0).
Paramètre : Index
Retourne : Valeur à l’index donné
By Id
Renvoie la valeur d’un élément à partir de son identifiant unique.
Paramètre : Identifiant
Retourne : Valeur associée
Fonctions mathématiques
Les fonctions mathématiques opèrent sur les types de données Nombre et effectuent des opérations arithmétiques, trigonométriques et de formatage.
💡 Si vous utilisez la valeur d’un composant Saisie de texte, pensez à utiliser la fonction Parse Number pour convertir la valeur avant toute opération.
Add
Ajoute un nombre à la valeur d’entrée.
Paramètre : Nombre à ajouter
Exemple : 10 + 5 retourne 15
Subtract
Soustrait un nombre de la valeur d’entrée.
Paramètre : Nombre à soustraire
Exemple : 10 - 3 retourne 7
Multiply
Multiplie la valeur d’entrée par un nombre.
Paramètre : Multiplicateur
Exemple : 10 × 3 retourne 30
Divide
Divise la valeur d’entrée par un nombre.
Paramètre : Diviseur
Exemple : 10 ÷ 2 retourne 5
Round
Arrondit au nombre entier le plus proche.
Exemple : 4.7 retourne 5, 4.3 retourne 4
Floor
Renvoie le plus grand nombre entier inférieur ou égal à un nombre.
Exemple : 4.7 retourne 4
Ceil
Renvoie le plus petit nombre entier supérieur ou égal à un nombre.
Exemple : 4.3 retourne 5
Sqrt
Renvoie la racine carrée d’un nombre.
Exemple : 16 retourne 4
Cbrt
Renvoie la racine cubique d’un nombre.
Exemple : 27 retourne 3
Tan
Renvoie la tangente d’un angle en radians.
Exemple : tan(π/4) retourne 1
Cos
Renvoie le cosinus d’un angle en radians.
Exemple : cos(0) retourne 1
Sin
Renvoie le sinus d’un angle en radians.
Exemple : sin(π/2) retourne 1
💡 Les fonctions trigonométriques attendent des angles en radians. Pour convertir des degrés en radians, multipliez par π/180.
Pow
Renvoie un nombre élevé à une puissance donnée.
Paramètres :
- Base : Le nombre à élever
- Exposant : La puissance à laquelle élever
Exemple : 2^3 (2 à la puissance 3) retourne 8
Abs
Retourne la valeur absolue d’un nombre.
Exemple : -5 retourne 5
Format Number
Renvoie un nombre dans le format demandé.
Paramètres :
- Minimums (Fractions) : le nombre minimal de décimales à utiliser
- Maximums (Fractions) : le nombre maximal de décimales à utiliser
💡 Découvrez le doc de référence : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat
Parse Number
Convertit une chaîne de caractères en nombre.
Parse Color
Transforme un nombre entier ou une chaîne de caractères en objet Couleur.
Parse Coordinates
Analyse une chaîne de caractères contenant des coordonnées et renvoie un objet Coordonnée.
Exemples de formats : "48.8566, 2.3522" ou "48.8566;2.3522"
Retourne : Objet Coordonnée
Utile lors de la réception de données de coordonnées sous forme de chaînes depuis des API externes ou fichiers CSV.
Fonctions sur le texte
Ces fonctions opèrent sur les types de données Texte pour la manipulation, le formatage et l’analyse de chaînes de caractères.
Truncate
Limite le nombre de caractères dans un texte en ajoutant ”…” à la fin.
Paramètre : Longueur maximale
Retourne : Chaîne de texte tronquée
Split
Divise une chaîne de caractères en sous-chaînes en utilisant un caractère séparateur.
Paramètres :
- Texte : La chaîne à diviser
- Séparateur : Caractère de division (ex.
,ou;)
Retourne : Tableau de sous-chaînes
Exemple : "pomme,banane,orange" avec le séparateur , retourne ["pomme", "banane", "orange"]
LowerCase
Renvoie une copie de la chaîne avec tous les caractères convertis en minuscules.
Exemple : "BONJOUR Monde" devient "bonjour monde"
UpperCase
Renvoie une copie de la chaîne avec tous les caractères convertis en majuscules.
Exemple : "bonjour Monde" devient "BONJOUR MONDE"
Concat
Combine le texte de plusieurs chaînes et renvoie la nouvelle chaîne ainsi formée.
Paramètres : Plusieurs valeurs texte
Retourne : Chaîne combinée
Markdown
Convertit un texte écrit en markdown en texte enrichi et stylisé affichable dans les composants Texte.
Exemple : "**gras** et *italique*" devient du texte formaté avec gras et italique.
Parse JSON
Analyse une chaîne de caractères contenant des données JSON et renvoie un objet ou tableau.
Paramètre : Chaîne JSON
Retourne : Objet, tableau ou valeur
Stringify JSON
Convertit un objet ou tableau en chaîne de caractères JSON.
Paramètre : Objet ou tableau
Retourne : Chaîne formatée JSON
Fonctions sur les dates et le temps
Ces fonctions opèrent sur les types de données Date pour le formatage, l’analyse et la manipulation de dates et d’heures.
Format Date
Convertit une date en une chaîne de caractères selon un format donné.
Vous pouvez choisir entre des formats de date et d’heure prédéfinis ou personnalisés.
Types prédéfinis
Paramètres :
- Style date : Style de formatage pour la partie date
- Style heure : Style de formatage pour la partie heure
- Fuseau horaire : Fuseau horaire de référence
Options Style date (exemple : 16 septembre 2021) :
| Style | Exemple de sortie |
|---|---|
| Aucun | (pas de date) |
| Court | 16/09/21 |
| Moyen | 16 sept. 2021 |
| Long | 16 septembre 2021 |
| Complet | jeudi 16 septembre 2021 |
Options Style heure (exemple : 16h53 et 15 secondes) :
| Style | Exemple de sortie |
|---|---|
| Aucun | (pas d’heure) |
| Court | 16:53 |
| Moyen | 16:53:15 |
| Long | 16:53:15 UTC+2 |
| Complet | 16:53:15 temps universel coordonné+2 |
Types personnalisés
Paramètres :
- Format Date/Heure : Format personnalisé utilisant des codes timestamp
- Fuseau horaire : Fuseau horaire de référence
Codes de format courants :
| Code | Description | Exemple (16 sept. 2021, 16:53:05) |
|---|---|---|
yyyy | Année (4 chiffres) | 2021 |
yy | Année (2 chiffres) | 21 |
MMMM | Mois (nom complet) | septembre |
MMM | Mois (nom court) | sept. |
MM | Mois (2 chiffres) | 09 |
M | Mois (1-2 chiffres) | 9 |
dd | Jour (2 chiffres) | 16 |
d | Jour (1-2 chiffres) | 16 |
EEEE | Jour de la semaine (complet) | jeudi |
EEE | Jour de la semaine (court) | jeu. |
HH | Heure 24h (2 chiffres) | 16 |
H | Heure 24h (1-2 chiffres) | 16 |
hh | Heure 12h (2 chiffres) | 04 |
h | Heure 12h (1-2 chiffres) | 4 |
mm | Minutes (2 chiffres) | 53 |
m | Minutes (1-2 chiffres) | 53 |
ss | Secondes (2 chiffres) | 05 |
s | Secondes (1-2 chiffres) | 5 |
a | Indicateur AM/PM | PM |
Exemples de formats :
dd/MM/yyyy→16/09/2021dd/MM/yyyy HH:mm→16/09/2021 16:53EEEE d MMMM yyyy 'à' HH:mm→jeudi 16 septembre 2021 à 16:53
💡 Voir tous les codes de format dans la référence de formatage Date/Heure
Parse Date
Analyse une chaîne de caractères avec une date et renvoie la date.
Paramètre : Chaîne de date
Retourne : Objet Date
Subtract Date
Renvoie la différence entre deux dates.
Paramètres :
- Première date : Date de début
- Deuxième date : Date de fin
Retourne : Durée en millisecondes
Add Seconds/Minutes/Hours/Days/Months/Years
Ajoute ou soustrait une durée spécifique à une date. Pour soustraire, saisissez un nombre négatif.
Paramètre : Nombre (positif pour ajouter, négatif pour soustraire)
Retourne : Nouvelle date
Exemple : Ajouter 7 jours à la date du jour retourne la date de la semaine prochaine.
Set Seconds/Minutes/Hours/Days/Months/Years
Remplace une partie spécifique de la date avec une nouvelle valeur.
Paramètre : Nouvelle valeur (nombre)
Retourne : Nouvelle date avec le composant modifié
Exemple : Définir le mois à 12 sur n’importe quelle date la change en décembre tout en conservant les autres composants (jour, année, heure) inchangés.
Get Seconds/Minutes/Hours/Day/Month/Year
Extrait un composant spécifique d’une date.
Retourne : Nombre représentant le composant extrait
Exemple : Get Month de 15/06/2023 retourne 6 (juin)
Fonctions sur les tableaux et collections
Ces fonctions opèrent sur les Tableaux et Collections pour manipuler, agréger et transformer des données structurées.
Merge
Fusionne deux collections en une seule.
Exemple : [1, 2] fusionné avec [3, 4] retourne [1, 2, 3, 4]
Count
Renvoie le nombre d’éléments d’un tableau.
Exemple : ["a", "b", "c"] retourne 3
Group By
Regroupe les données selon un critère, créant des tableaux imbriqués organisés par la propriété spécifiée.
Paramètre : Nom de propriété pour regrouper
Retourne : Objet avec tableaux groupés
Categorize by
Catégorise les données selon un critère, similaire à Group By mais avec une structure aplatie.
Paramètre : Nom de propriété pour catégoriser
Retourne : Collection catégorisée
Uniq By
Supprime les doublons d’une collection selon un critère donné.
Paramètre : Nom de propriété pour vérifier l’unicité
Retourne : Tableau sans doublons
Min
Renvoie la valeur minimale d’un tableau de nombres.
Retourne : Nombre minimal
Min By
Renvoie l’objet ayant la valeur minimale pour une propriété spécifiée.
Paramètres :
- Collection : Tableau d’objets
- Nom de propriété : Champ à comparer
Exemple : Depuis [{prix: 10}, {prix: 5}, {prix: 15}], MinBy sur “prix” retourne {prix: 5}
Max
Renvoie la valeur maximale d’un tableau de nombres.
Exemple : [10, 5, 20, 15] retourne 20
Max By
Renvoie l’objet ayant la valeur maximale pour une propriété spécifiée.
Paramètres :
- Collection : Tableau d’objets
- Nom de propriété : Champ à comparer
Exemple : Depuis [{score: 10}, {score: 25}, {score: 15}], MaxBy sur “score” retourne {score: 25}
Mean
Renvoie la valeur moyenne d’un tableau de nombres.
Retourne : Nombre moyen
Exemple : [10, 20, 30] retourne 20
Mean By
Renvoie la moyenne des valeurs pour une propriété spécifiée dans une collection.
Paramètres :
- Collection : Tableau d’objets
- Nom de propriété : Champ à moyenner
Exemple : Depuis [{note: 12}, {note: 16}, {note: 14}], MeanBy sur “note” retourne 14
Sum
Renvoie la somme de toutes les valeurs d’un tableau de nombres.
Retourne : Somme totale
Exemple : [10, 20, 30] retourne 60
Sum By
Renvoie la somme des valeurs pour une propriété spécifiée dans une collection.
Paramètres :
- Collection : Tableau d’objets
- Nom de propriété : Champ à additionner
Exemple : Depuis [{prix: 10}, {prix: 20}, {prix: 5}], SumBy sur “prix” retourne 35
Shuffle
Permet de mélanger aléatoirement les éléments d’un tableau. Vous pouvez définir une Taille maximale pour limiter le nombre d’éléments dans le résultat.
Pour en savoir plus sur l’usage de la fonction Shuffle : Ajouter de l’aléatoire
Chunk
Découpe un tableau en plusieurs sous-tableaux de la taille spécifiée.
Paramètre : Taille de chaque morceau
Exemple : [1, 2, 3, 4, 5, 6] avec taille 2 retourne [[1, 2], [3, 4], [5, 6]]
Distance
Calcule la distance entre deux points Coordonnée.
Paramètres :
- Première coordonnée : Point de départ
- Deuxième coordonnée : Point d’arrivée
Retourne : Distance en mètres
💡 Utile pour les fonctionnalités de proximité, trouver les emplacements les plus proches, ou les applications de géo-clôture.
Join
Convertit tous les éléments d’un tableau en une chaîne de caractères séparée par un séparateur.
Paramètres :
- Tableau : Tableau de valeurs
- Séparateur : Chaîne à insérer entre les éléments
Exemple : ["pomme", "banane", "orange"] avec le séparateur ", " retourne "pomme, banane, orange"
Keys
Renvoie un tableau des noms de propriétés énumérables (clés) d’un objet.
Paramètre : Objet (type Clé/Valeur)
Retourne : Tableau de clés
Exemple : Depuis { nom: "Paris", pays: "France" } retourne ["nom", "pays"]
Values
Renvoie un tableau des valeurs des propriétés énumérables d’un objet.
Paramètre : Objet (type Clé/Valeur)
Retourne : Tableau de valeurs
Exemple : Depuis { nom: "Paris", pays: "France" } retourne ["Paris", "France"]
Expand
Renvoie le ou les éléments associés à une ou plusieurs Références, en les résolvant pour récupérer les objets complets vers lesquels elles pointent.
Paramètre : Champ Référence ou Multi-référence
Retourne : Objet(s) référencé(s)
Find
Retourne le premier élément d’une collection qui correspond à une condition.
Paramètres :
- Collection : Tableau à parcourir
- Condition : Expression à évaluer pour chaque élément
Retourne : Premier élément correspondant ou undefined
Exemple : Depuis [{age: 15}, {age: 25}, {age: 20}], trouver où age > 18 retourne {age: 25}
Find Index
Similaire à Find, mais retourne l’index du premier élément correspondant à la condition au lieu de l’élément lui-même.
Retourne : Numéro d’index (commençant à 0) ou -1 si non trouvé
Find Last Index
Similaire à Find Index, mais itère sur les éléments de droite à gauche, retournant l’index du dernier élément correspondant.
Retourne : Numéro d’index ou -1 si non trouvé