Neste artigo, exploraremos como evitar erros ao tentar acessar dados que podem ser indefinidos ou nulos, e veremos métodos que você pode use para gerenciar dados de forma eficaz quando necessário.
Em JavaScript, ao tentar acessar um valor ou função dentro de objetos aninhados, se o resultado for indefinido, seu código poderá gerar um erro. Este erro pode interromper a execução do seu código. No entanto, se você usar o operador de encadeamento opcional, ele retornará indefinido em vez de gerar um erro se o valor ou função não existir. Isso evita que seu código trave.
Exemplo :
const person = { name: 'John', address: { city: 'New York' } }; console.log(person.address?.city); // 'New York' console.log(person.address?.country); // undefined, no error
Se o valor de uma variável for nulo ou indefinido,Para evitar isso, você pode usar o operador coalescência nula
Exemplo :
function getconfig(config) { return config ?? { timeout: 1000, retries: 3 }; } let userConfig = null; let finalConfig = getConfig(userConfig); // { timeout: 1000, retries: 3 } console.log(finalConfig);
Removendo duplicatas com Set :
Para um array com valores duplicados você pode remover valor duplicado usando set
Exemplo :
const letter= ["a", "b", "c" , "c" , "a" , "d" ,"d" ,]; const result= [...new Set(letter)]; console.log(result) => ["a", "b" , "c" , "d"]
Evitando duplicatas com WeakSet :
Como WeakSet contém referências a objetos, um objeto só pode ser adicionado a um WeakSet uma vez.
Exemplo :
// 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
Neste artigo, exploramos alguns conceitos importantes que podem ajudar a evitar erros ao acessar valores que podem ser indefinidos ou nulos, bem como métodos para gerenciar dados de forma mais eficaz quando necessário .
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3