Cette fonction ompare deux valeurs ayant des types simples (String / Number / Boolean / Date / Time / Date-time).
Elle retourne 0 si les deux valeurs sont égales. Elle retourne une valeur inférieure à 0 si la première valeur est strictement inférieure à la seconde. Elle retourne une valeur supérieure à 0 si la première valeur est supérieure à la seconde.
Lorsque les deux valeurs sont de type String, le mode de comparaison est lexicographique. Il est possible, via le paramètre "opts" de définir une comparaison utilisant une collation permettant de comparer deux chaînes de caractères en fonction d'une langue donnée.
Paramètres
String / Number / Boolean / Date / Time / Date-time |
compVal1 |
Valeur de type simple à comparer |
Obligatoire |
String / Number / Boolean / Date / Time / Date-time |
compVal2 |
Valeur de type simple à comparer |
Obligatoire |
Hash |
opts |
Définition des options de comparaison. Cet objet peut avoir les attributs suivants :
|
Optionnel. |
Par exemple
<#assign stringVal1 = "foo" /> <#assign stringVal2 = "bar" /> <#assign opts = {"stringComp": "localeBased", "collator": {"locale": "en-GB", "strength": "primary"} } /> <#assign compare = hardisCore.compare (stringVal1, stringVal2, opts) /> <#if compare == 0> ${stringVal1} equals ${stringVal2} <#elseif compare > 0> ${stringVal1} is greater than ${stringVal2} <#else> ${stringVal1} is less than ${stringVal2} </#if>
Autre exemple
<#assign compare = hardisCore.compare ("2015-05-23"?date.xs, "2017-10-04"?date.xs) />