Populaire ce mois

Les opérateurs Blogger [introduction]

Nous vous rappelons que lorsque vous accédez à ce blog, vous signez automatiquement un accord avec Blogger Code.
Consultez les CGU.


Les opérateurs [introduction]
Les opérateurs Blogger sont utilisés dans les expressions pour effectuer des opérations arithmétiques, comparer des valeurs, traiter des tableaux, etc...


Avantages des opérateurs Blogger

Les opérateurs Blogger sont très similaires à d'autres opérateurs utilisés dans des langages de programmation comme Javascript.
Les habitués de ces langages s'y retrouveront aisément et les débutants ou amateurs prendront un immense plaisir à évoluer dans ce monde.
Le catalogue Blogger n'est pas aussi étoffé que les autres langages, mais en tant que petit poucet, on peut lui attribuer plusieurs avantages :
  • Traitement de l'api XML
  • Temps d’exécution imperceptible aux yeux des visiteurs.
  • Ne laisse aucune trace sur le web. Seule la valeur du résultat de l'opération s'affiche dans le rendu HTML.
  • ...
Le langage a aussi évolué. Ainsi sont apparus en 2015 les packs 1 & 2 qui contenaient de nouvelles balises, de nouveaux paramètres et une classification des données par type, suivi en 2016 des packs 3 et 4 avec une série de nouveaux opérateurs. Là encore, en comparaison avec le pack originel, il n'y a pas photo :
  • Nombre de combinaisons très élevé.
  • Imbrication des expressions
  • Paramètres additionnels des données
  • Traitement ou/et création de tableaux
  • Données triées par type - A chaque type son opérateur et à chaque opérateur son type
  • Usage d'une syntaxe alternative simplifiée
  • Permet de réduire le poids du fichier XML
  • ...


Opérateur de concaténation

L'opérateur de concaténation a la particularité de relier une chaîne de caractères à une valeur du même type ou d'un type différent...
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Concaténation + no limit ? string + allType +(string,allType) string
allType + string +(allType,string)


Opérateurs de comparaison

Les opérateurs de comparaison ont la particularité de vérifier l'équivalence de deux valeurs. Le résultat renvoie une valeur booléenne.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Égalité == 2 allType == allType ==(allType,allType) boolean
eq allType eq allType eq(allType,allType)
Inégalité != allType != allType !=(allType,allType)
neq allType neq allType neq(allType,allType)
Inférieur < number < number <(number,number)
lt number lt number lt(number,number)
Inférieur ou égal <= number <= number <=(number,number)
lte number lte number lte(number,number)
Supérieur ou égal >= number >= number >=(number,number)
gte number gte number gte(number,number)
Supérieur > number > number >(number,number)
gt number gt number gt(number,number)


Les opérateurs arithmétiques

Les opérateurs arithmétiques permettent de créer des opérations mathématiques entre plusieurs nombres. Le résultat renvoie une valeur numérique.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Addition + no limit ? number + number +(number,number) number
Soustraction - number - number -(number,number)
Multiplication * number * number *(number,number)
Division / number / number /(number,number)
Modulo % number % number %(number,number)


L'opérateur de contenu

L'opérateur de contenu a la particularité de comparer une section d'une chaîne de caractères à une chaîne de caractères. Le résultat renvoie une valeur booléenne.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Contient contains 2 string contains string contains(string,string) boolean


Les opérateurs logiques

Les opérateurs de logiques comparent des valeurs booléennes dont le résultat renvoie une valeur booléenne.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
ET && no limit ? boolean && boolean &&(boolean,boolean) boolean
and boolean and boolean and(boolean,boolean)
OU || boolean || boolean ||(boolean,boolean)
or boolean or boolean or(boolean,boolean)
N'est pas ! 1 !boolean
not not boolean


Les opérateurs membres

Les opérateurs membres ont la particularité de vérifier l'équivalence d'une valeur à une valeur contenue dans un tableau. Le résultat renvoie une valeur booléenne.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Résultat
Dans in 2 string in array[string] boolean
boolean in array[boolean]
number in array[number]
Contient contains array[string] contains string
array[boolean] contains boolean
array[number] contains number


Les sélecteurs

Les sélecteurs ternaires et binaires sont des opérateurs utilisant respectivement trois et deux opérandes. Le résultat est un choix parmi 2 valeurs.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Résultat
Ternaire ? : 3 boolean ? value1 : value2 value1 ou value2
Binaire ?: 2 value1 ?: value2


Les opérateurs de tableaux

Les opérateurs de tableaux permettent de contrôler le résultat de sortie d'un tableau.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Résultat
Jusqu'à take 2 array take number array
limit array limit number
A partir de Skip array skip number
offset array offset number
Plage de nombres to number to number array[number]


Les opérateurs lambdas

Les opérateurs Lambdas permettent de traiter des tableaux en fonction de critères contenus dans ces tableaux.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Résultat
Au moins 1 any 2 array any (var => boolean) boolean
Tout all array all (var => boolean)
Aucun none array none (var => boolean)
Compteur count array count (var => boolean) number
Map map array map (var => criterion) array[criterion]
select array select (var => criterion)
Filtre filter array filter (var => boolean) array
where array where (var => boolean)
Premier first array first (var => boolean) Child type of the array


Les opérateurs d'images

Les opérateurs d'images permettent d'appliquer des caractéristiques aux URLs des images.
En savoir plus
Noms Opérateurs Opérandes Syntaxe fonctionnelle Résultat
Redimensionner resizeImage 2 ou 3 resizeImage(image,number,string) image
Images réactives sourceSet sourceSet(image,array[number],string) string


Les opérateurs d'URLs

Les opérateurs d'URLs ont la particularité de traiter une url en y ajoutant ou en y remplaçant des caractéristiques.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Nouveau chemin path 2 URL path string path(URL,string) string
Remplacer les paramètres params URL params object params(URL,object)
Ajouter des paramètres appendParams URL appendParams object appendParams(URL,object)
Ajouter/Remplacer un fragment fragment URL fragment string fragment(URL,string)


L'opérateur de dates

L'opérateur de dates à la particularité d'être une exclusivité Template V3 et Gadget V2. Il permet de personnaliser le format à l'aide du formatage ICU.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Format format 2 date format string format(date,string) date


L'opérateur d'extraits

L'opérateur d'extraits a la particularité d'appliquer des caractéristiques à une chaîne de caractères.
En savoir plus
Noms Opérateurs Opérandes Syntaxe par défaut Syntaxe fonctionnelle Résultat
Créer un extrait snippet 2 string snippet object snippet(string,object) string


Syntaxe fonctionnelle

Une syntaxe fonctionnelle est une alternative que l'on peut utiliser lorsque la syntaxe standard contient plusieurs fois le même opérateur.
La syntaxe fonctionnelle travaille avec la plupart des opérateurs. Consultez le tableau ci-dessus.
Syntaxe standard
value operator value
Syntaxe fonctionnelle
operator(value,value,value)

Tous les types de valeurs sont autorisés.
Les opérandes peuvent être :
  • Une valeur explicite
  • Une donnée
  • Le résultat d'une opération qui a été reportée dans une variable.
Les opérandes peuvent contenir des opérations imbriquées. Celles-ci doivent être intégrées dans des parenthèses.
Exemple avec 2 opérandes
and(data:view.isPost, data:blog.isPrivate)
Le résultat sera vrai, si la page courante est une page d'article et si le blog est privé.
Exemple avec plusieurs opérandes
+(3,5,9,100)
Le résultat sera 117.
Exemple avec une opération imbriquée
+(3,5,9,(100*5))
Le résultat sera 517.


Limitation

40 jetons maximum sont attribués à la valeur contenue dans un attribut d'expression.
Lorsque ce quota est épuisé, l'expression ne travaillera plus. Selon les cas, un commentaire peut s'afficher dans le code source du blog à l'emplacement où aurait dû s'afficher le contenu.
  • Consommation des jetons:
    • 1 jeton par opérande.
    • 1 jeton par opérateur.
    • 1 jeton par tableau.
    • 1 jeton par objet.
    • 1 jeton par item contenu dans un tableau.
    • 1 jeton par item contenu dans un objet.


Les autres références XML

Fiches populaires cette semaine

Facebook : Bouton partager [Share button]