# Valeurs par defaut

Applique des valeurs par defaut avec lodash _.defaults

> Page canonique: https://elysiatools.com/fr/tools/defaults-object

- **Catégorie:** Data Processing

- **Mots-clés:** defaut, objet, lodash, remplir, proprietes

## Présentation

Assigne des valeurs par defaut aux proprietes indefinies de la cible.

**Points forts :**
- Utilise lodash `_.defaults`
- Ne remplit que les proprietes undefined
- Les sources suivantes sont appliquees en premier

**Exemple :**
- Cible : `{"a":1}`
- Source 1 : `{"a":2,"b":2}`
- Resultat : `{"a":1,"b":2}`

## Entrées

- **Objet Cible** (textarea): Entrez l'objet JSON cible
- **Source 1** (textarea): Premier objet source
- **Source 2** (textarea): Objet source optionnel
- **Source 3** (textarea): Objet source optionnel

## Quand l'utiliser

- Lorsque vous devez compléter un objet de configuration avec des paramètres manquants.
- Pour fusionner des données utilisateur avec des valeurs de secours prédéfinies.
- Pour garantir qu'un objet possède toutes les clés nécessaires avant son traitement.

## Fonctionnement

- Saisissez votre objet cible principal dans le champ dédié.
- Ajoutez une ou plusieurs sources contenant les valeurs par défaut à appliquer.
- L'outil compare les objets et remplit uniquement les propriétés manquantes (undefined) de la cible.
- Récupérez l'objet final fusionné avec les valeurs par défaut intégrées.

## Cas d'usage

- Normalisation de configurations d'applications.
- Préparation de payloads API avec des valeurs optionnelles.
- Initialisation d'objets de données avec des paramètres système par défaut.

## Questions fréquentes

### L'outil écrase-t-il les valeurs existantes ?

Non, il ne remplit que les propriétés qui sont indéfinies dans l'objet cible.

### Quelle bibliothèque est utilisée ?

L'outil s'appuie sur la fonction _.defaults de la bibliothèque lodash.

### Puis-je utiliser plusieurs sources ?

Oui, vous pouvez renseigner jusqu'à trois sources différentes pour définir vos valeurs par défaut.

### Que se passe-t-il si une propriété est déjà définie ?

Si la propriété existe déjà dans l'objet cible, sa valeur est conservée et n'est pas modifiée.

### Quel format de données est requis ?

L'outil accepte uniquement des objets au format JSON valide.

## Outils associés

- [Assigner un objet](https://elysiatools.com/fr/tools/assign-object): Assigne les proprietes source a l'objet cible avec lodash _.assign
- [Remplir le Tableau](https://elysiatools.com/fr/tools/fill-array): Remplir le tableau avec une valeur de l'indice de début à la fin en utilisant lodash _.fill
- [Depuis Paires](https://elysiatools.com/fr/tools/from-pairs): Convertit un tableau de paires clé-valeur en objet avec lodash _.fromPairs
- [Retirer des Valeurs](https://elysiatools.com/fr/tools/pull-values): Supprime des valeurs d un tableau avec lodash _.pull
- [Sans Valeurs](https://elysiatools.com/fr/tools/without-values): Supprime des valeurs avec lodash _.without
- [Zip Objet](https://elysiatools.com/fr/tools/zip-object): Cree un objet avec lodash _.zipObject
- [Compacter le Tableau](https://elysiatools.com/fr/tools/compact-array): Supprimer les valeurs fausses du tableau avec lodash _.compact
- [Aplatir le Tableau par Profondeur](https://elysiatools.com/fr/tools/flatten-depth-array): Aplatit un tableau à une profondeur spécifiée en utilisant lodash _.flattenDepth

## Exemples

- [Exemples Avancés d'Application Grafana](https://elysiatools.com/fr/samples/grafana-samples): Exemples complets de Grafana couvrant le design avancé de tableaux de bord, la configuration d'alertes, l'intégration de sources de données et le développement de plugins
- [Exemples de Codes QR](https://elysiatools.com/fr/samples/qrcode-samples): Images de codes QR d'exemple pour tester les outils de lecture et de génération de codes QR
- [Exemples D3.js Data Visualization](https://elysiatools.com/fr/samples/d3js-data-visualization): Exemples complets de visualisation de données D3.js incluant graphiques, cartes, animations et visualisations interactives
- [Exemples Toolchain JavaScript Rome](https://elysiatools.com/fr/samples/rome): Exemples de toolchain JavaScript Rome incluant configuration, linting, formatting, bundling et gestion de projets
