Dans cet article, nous explorerons comment éviter les erreurs lors de la tentative d'accès à des données qui pourraient être non définies ou nulles, et nous examinerons les méthodes que vous pouvez utiliser pour gérer les données efficacement lorsque cela est nécessaire.
En JavaScript, lorsque vous essayez d'accéder à une valeur ou à une fonction dans des objets imbriqués, si le résultat est non défini, votre code peut générer une erreur. Cette erreur peut arrêter l'exécution de votre code. Cependant, si vous utilisez l'opérateur de chaînage facultatif, il renverra undéfini au lieu de générer une erreur si la valeur ou la fonction n'existe pas. Cela empêche votre code de planter.
Exemple :
const person = { name: 'John', address: { city: 'New York' } }; console.log(person.address?.city); // 'New York' console.log(person.address?.country); // undefined, no error
Si la valeur d'une variable est nulle ou non définie, pour éviter cela, vous pouvez utiliser l'opérateur coalescence nulle
Exemple :
function getconfig(config) { return config ?? { timeout: 1000, retries: 3 }; } let userConfig = null; let finalConfig = getConfig(userConfig); // { timeout: 1000, retries: 3 } console.log(finalConfig);
Suppression des doublons avec Set :
Pour un tableau avec des valeurs en double, vous pouvez supprimer valeur en double à l'aide de set
Exemple :
const letter= ["a", "b", "c" , "c" , "a" , "d" ,"d" ,]; const result= [...new Set(letter)]; console.log(result) => ["a", "b" , "c" , "d"]
Prévenir les doublons avec WeakSet :
Étant donné que WeakSet contient des références à des objets, un objet ne peut être ajouté à un WeakSet qu'une seule fois.
Exemple :
// Creating a WeakSet const weakset = new WeakSet(); // Defining objects const personJane = { name: 'jane' }; const personMike = { name: 'mike' }; // Adding objects to the WeakSet weakset.add(personJane); weakset.add(personMike); console.log(weakset.has(obj1)); // true console.log(weakset.has(obj2)); // true // Attempting to add the same object again weakset.add(obj1); // obj1 is already present, won't be added again console.log(weakset.has(obj1)); // true console.log(weakset.has(obj2)); // true // Removing an object from the WeakSet weakset.delete(obj1); console.log(weakset.has(obj1)); // false // Adding the object again weakset.add(obj1); console.log(weakset.has(obj1)); // true
Dans cet article, nous avons exploré certains concepts importants qui peuvent aider à éviter les erreurs lors de l'accès à des valeurs qui peuvent être indéfinies ou nulles, ainsi que des méthodes pour gérer les données plus efficacement lorsque cela est nécessaire. .
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3