Chaînage optionnel JSON
Fait partie de la section Logique & Flux du Journey JavaScript de Coddy — leçon 24 sur 65.
L'enchaînement optionnel (?.) vous permet d'accéder en toute sécurité à des propriétés imbriquées sans vous soucier des erreurs si une propriété est null ou undefined.
Exemple sans chaînage optionnel :
let obj = {};
console.log(obj.key1.key2);
// Erreur : Impossible de lire les propriétés de undefinedExemple avec le chaînage optionnel :
let obj = {};
console.log(obj.key1?.key2);
// undefined (pas d'erreur)- Si
key1existe, il accède àkey2. - Si
key1estnullouundefined, il renvoieundefinedau lieu de lever une erreur.
Plus d'exemples :
let user = {
profile: {
name: "Alice"
}
};
console.log(user.profile?.name);
// "Alice"console.log(user.profile?.age);
// undefined (aucune erreur)console.log(user.address?.city);
// undefined (pas d'erreur)Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Aide-mémoire
L'enchaînement optionnel (?.) accède en toute sécurité aux propriétés imbriquées sans erreur si une propriété est null ou undefined :
let obj = {};
console.log(obj.key1?.key2);
// undefined (pas d'erreur)Si la propriété existe, il accède au niveau suivant. S'il est null ou undefined, il renvoie undefined au lieu de lever une erreur.
let user = {
profile: {
name: "Alice"
}
};
console.log(user.profile?.name); // "Alice"
console.log(user.profile?.age); // undefined
console.log(user.address?.city); // undefinedEssayez vous-même
Cette leçon ne comprend pas de défi de code.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique & Flux
1Les chaînes de caractères en profondeur
Fondamentaux des chaînesParcourir les chaînesTemplate LiteralsMéthodes des chaînesRécapitulatif - String Weaver4JSON Partie 2
Itérer sur du JSONJSON imbriquéChaînage optionnel JSONCopie superficielle et profondeRécapitulatif - Magasin de vélosRécapitulatif - Système solaire7Système de gestion de bibliothèque
Présentation du projetAjouter des livres2Tableaux multidimensionnels
Bases des tableaux 2DAccès aux éléments d'un tableau 2DBoucles imbriquées et tableaux 2DRécapitulatif - Tableaux 2DAddition et soustraction de matricesTableaux irréguliers (Jagged Arrays)Tableaux 3D et au-delàModèles courants de tableaux 2DRécapitulatif - Tout sur les tableaux3JSON Partie 1
Qu'est-ce qu'un JSON ?Vérifier si une clé existeMéthodes d'objetL'opérateur Spread Partie 1L'opérateur Spread Partie 2Supprimer des clésRécapitulatif - Manipuler les clés JSON