---
title: Librairie des fonctions ternaires
description: Optimiser votre configuration avec des fonctions, opérateurs logiques, et comparatifs
---

[Passer au contenu](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/librairie-des-fonctions-ternaires#main-content)

- [Français](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/librairie-des-fonctions-ternaires)
- [English](https://support.intelligenceindustrielle.com/en/base-de-connaissance/en/librairie-des-fonctions-ternaires)

Français

Afficher le sous-menu pour les traductions

![](https://support.intelligenceindustrielle.com/hs-fs/hubfs/Logo%20Intelligence%20Industrielle.png?width=100&height=75&name=Logo%20Intelligence%20Industrielle.png)

Ouvrir la navigation principale

Fermer la navigation principale

- - [Français](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/librairie-des-fonctions-ternaires)
    - [English](https://support.intelligenceindustrielle.com/en/base-de-connaissance/en/librairie-des-fonctions-ternaires)

  Français
  
  Afficher le sous-menu pour les traductions
- Contact

 Contact

 Comment pouvons-nous vous aider ?

- Il n'y a aucune suggestion car le champ de recherche est vide.

1. [Base de connaissances K2 App](https://support.intelligenceindustrielle.com/fr/base-de-connaissance?hsLang=fr)
2. [Configuration et fonctionnalités 🤓](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/configuration-et-fonctionnalit%C3%A9s?hsLang=fr)
3. [Configuration avancés - Zone des experts](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/configuration-et-fonctionnalit%C3%A9s?hsLang=fr#configuration-avanc%C3%A9s-zone-des-experts)

1 mai 2025

# Librairie des fonctions ternaires

## Dans le développement de notre application, les expressions ternaires jouent un rôle essentiel pour l'évaluation dynamique des variables. Elles permettent d'écrire des conditions concises qui peuvent retourner des valeurs numériques, booléennes ou même des chaînes de caractères.

#### Cet article présente une librairie complète des fonctions et opérateurs utilisables dans les expressions ternaires afin d'optimiser la configuration de vos variables.

### 1. Qu'est-ce qu'une expression ternaire ?

Une expression ternaire est une manière abrégée d'écrire une condition simple. Elle évalue une condition et retourne une valeur en fonction du résultat de cette condition.

**Syntaxe générale :**

```
(condition) ? valeur_si_vrai : valeur_si_faux
```

**Exemple :**

```
(age >= 18) ? "Adulte" : "Mineur";
```

Dans cet exemple, si `age` est supérieur ou égal à 18, `statut` prendra la valeur `"Adulte"`, sinon `"Mineur"`.

 

### 2. Opérateurs logiques

Les opérateurs logiques permettent de combiner ou de modifier des conditions au sein des expressions ternaires.

#### ET logique (`&&`)

- **Utilisation :** `condition1 && condition2`
- **Description :** Retourne `true` si **les deux** conditions sont vraies.

**Exemple :**

```
(estConnecté && estAdmin) ? "Accès autorisé" : "Accès refusé";
```

Ici, l'accès est autorisé uniquement si l'utilisateur est connecté **et** est administrateur.

#### OU logique (`||`)

- **Utilisation :** `condition1 || condition2`
- **Description :** Retourne `true` si **au moins une** des conditions est vraie.

**Exemple :**

```
(estÉtudiant || estProfesseur) ? "Accès à la bibliothèque" : "Accès refusé";
```

#### NON logique (`!`)

- **Utilisation :** `!condition`
- **Description :** Retourne l'inverse de la condition.

**Exemple :**

```
!estActif ? "Compte inactif" : "Compte actif";
```

#### XOR logique (ou exclusif)

Comme l'opérateur XOR n'est pas directement disponible, il peut être simulé :

**Code :**

```
(a || b) && !(a && b);
```

Cette méthode simule le comportement du XOR. Elle retourne `true` si une seule des deux conditions est vraie, mais pas les deux en même temps.

**Exemples :**

- `(true) &&! (false)` retourne `true`
- `(false) &&! (true)` retourne `true`
- `(true) &&! (true)` retourne `false`
- `(false) &&! (false)` retourne `false`

### 3. Opérateurs comparatifs

Ces opérateurs permettent de comparer des valeurs entre elles.

#### Égalité (`==`)

- **Utilisation :** `valeur1 == valeur2`
- **Description :** Vérifie si `valeur1` est égale à `valeur2`.

**Exemple :**

```
(score == 100) ? "Score parfait !" : "Score insuffisant";
```

#### Inégalité (`!=`)

- **Utilisation :** `valeur1 != valeur2`
- **Description :** Vérifie si `valeur1` est différente de `valeur2`.

**Exemple :**

```
(utilisateur != "") ? "Bienvenue, " + utilisateur : "Veuillez vous identifier";
```

#### Supérieur à (`>`)

- **Utilisation :** `valeur1 > valeur2`
- **Description :** Vérifie si `valeur1` est strictement supérieure à `valeur2`.

#### Inférieur à (`<`)

- **Utilisation :** `valeur1 < valeur2`
- **Description :** Vérifie si `valeur1` est strictement inférieure à `valeur2`.

#### Supérieur ou égal à (`>=`)

- **Utilisation :** `valeur1 >= valeur2`
- **Description :** Vérifie si `valeur1` est supérieure ou égale à `valeur2`.

#### Inférieur ou égal à (`<=`)

- **Utilisation :** `valeur1 <= valeur2`
- **Description :** Vérifie si `valeur1` est inférieure ou égale à `valeur2`.

### 4. Opérateurs mathématiques

Ces opérateurs permettent d'effectuer des calculs au sein des expressions ternaires.

#### Addition (`+`)

- **Utilisation :** `valeur1 + valeur2`

#### Soustraction (`-`)

- **Utilisation :** `valeur1 - valeur2`

#### Multiplication (`*`)

- **Utilisation :** `valeur1 * valeur2`

#### Division (`/`)

- **Utilisation :** `valeur1 / valeur2`

#### Modulo (`%`)

- **Utilisation :** `valeur1 % valeur2`
- **Description :** Retourne le reste de la division de `valeur1` par `valeur2`.

**Exemple :**

```
(nombre % 2 == 0) ? "Nombre pair" : "Nombre impair";
```

### 5. Opérateurs conditionnels

#### Ternaires simples

Permettent de tester une condition unique et de retourner l'une des deux valeurs.

**Syntaxe :**

```
(condition) ? valeur_si_vrai : valeur_si_faux;
```

#### Ternaires imbriqués

Permettent de gérer plusieurs conditions en imbriquant des expressions ternaires.

**Exemple :**

```
(message = (heure < 12) ? "Bonjour" : (heure < 18) ? "Bon après-midi" : "Bonsoir";
```

Ici, `message` prendra une valeur différente en fonction de l'heure.

### 6. Évaluation de chaînes de caractères

Il est possible de comparer des chaînes de caractères dans les expressions ternaires.

**Exemple :**

```
(motDePasse == "secret") ? "Accès autorisé" : "Accès refusé";
```

Pour une comparaison insensible à la casse :

```
(motDePasse.toLowerCase() == "secret") ? "Accès autorisé" : "Accès refusé";
```

### 7. Meilleures pratiques

- **Lisibilité :** Gardez les expressions ternaires simples pour faciliter la lecture du code.
- **Éviter l'imbrication excessive :** Trop de ternaires imbriqués peuvent rendre le code confus.
- **Utiliser les parenthèses :** Elles améliorent la clarté, surtout lors de combinaisons d'opérateurs.
- **Validation des types :** Assurez-vous que les comparaisons sont effectuées entre valeurs du même type pour éviter les erreurs.

### 8. Exemples concrets

#### Exemple 1 : Vérification d'âge

```
(age >= 18) ? "Peut voter" : "Ne peut pas voter";
```

#### Exemple 2 : Calcul de remise

```
(estMembre) ? prix * 0.9 : prix;
```

Si `estMembre` est vrai, une remise de 10 % est appliquée.

#### Exemple 3 : Sélection de thème

```
(préférenceUtilisateur == "sombre") ? "dark-theme" : "light-theme";
```

### Conclusion

La maîtrise des expressions ternaires et des opérateurs associés est un atout pour optimiser et simplifier vos configurations de variables au sein de l'application. En utilisant cette librairie de fonctions ternaires, vous pouvez écrire un code plus concis tout en conservant une logique claire et efficace. N'hésitez pas à intégrer ces éléments dans vos développements pour une programmation plus agile et performante.

- [Concepts clés 🔑](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/concepts-cl%C3%A9s?hsLang=fr#main-content)

    - [Comprendre les données en temps réel](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/concepts-cl%C3%A9s?hsLang=fr#comprendre-les-donn%C3%A9es-en-temps-r%C3%A9el)
    - [Introduction aux KPIs](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/concepts-cl%C3%A9s?hsLang=fr#introduction-aux-kpis)
- [Configuration et fonctionnalités 🤓](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/configuration-et-fonctionnalit%C3%A9s?hsLang=fr#main-content)

    - [Configuration avancés - Zone des experts](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/configuration-et-fonctionnalit%C3%A9s?hsLang=fr#configuration-avanc%C3%A9s-zone-des-experts)
    - [Tuiles - Création et personnalisation](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/configuration-et-fonctionnalit%C3%A9s?hsLang=fr#tuiles-cr%C3%A9ation-et-personnalisation)
- [Conseils et meilleures pratiques 👌](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/conseils-et-meilleures-pratiques?hsLang=fr#main-content)

    - [Astuces et conseils](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/conseils-et-meilleures-pratiques?hsLang=fr#astuces-et-conseils)
    - [Études de cas et retour d'expériences](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/conseils-et-meilleures-pratiques?hsLang=fr#%C3%A9tudes-de-cas-et-retour-dexp%C3%A9riences)
- [Premiers pas 👣](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/premiers-pas?hsLang=fr#main-content)

    - [Prise en main et navigation 🧭](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/premiers-pas?hsLang=fr#prise-en-main-et-navigation)
    - [Guides de l'utilisateur 📖](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/premiers-pas?hsLang=fr#guides-de-lutilisateur)
    - [Configuration initiale ⚓](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/premiers-pas?hsLang=fr#configuration-initiale)
- [Connectivité machine 📡](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/connectivit%C3%A9-machine?hsLang=fr#main-content)

    - [Boîtiers K2](https://support.intelligenceindustrielle.com/fr/base-de-connaissance/connectivit%C3%A9-machine?hsLang=fr#bo%C3%AEtiers-k2)

[![Logo Intelligence Industrielle](https://support.intelligenceindustrielle.com/hs-fs/hubfs/Logo%20Intelligence%20Industrielle-3.png?width=162&height=50&name=Logo%20Intelligence%20Industrielle-3.png "Logo Intelligence Industrielle")](https://www.intelligenceindustrielle.com)

266 rue Saint-Paul E, Montréal, (Québec) H2Y 1G9

<https://www.facebook.com/IntelligenceIndustrielle/> <https://www.linkedin.com/company/intelligence-industrielle/> <https://www.youtube.com/@intelligenceindustrielle586> [mailto:success@intelligenceindustrielle.com](mailto:success@intelligenceindustrielle.com)

Copyright © 2025, Fait avec 🧠 par intelligenceindustrielle.com