Maison > interface Web > js tutoriel > Comment puis-je supprimer les attributs nuls et non définis d'un objet JavaScript ?

Comment puis-je supprimer les attributs nuls et non définis d'un objet JavaScript ?

DDD
Libérer: 2024-12-02 00:53:10
original
708 Les gens l'ont consulté

How Can I Remove Null and Undefined Attributes from a JavaScript Object?

Supprimer les attributs vides d'un objet en JavaScript

Les propriétés des objets JavaScript peuvent parfois contenir des valeurs non définies ou nulles. Cela peut entraîner des difficultés lors de l’utilisation des données et rendre difficile le maintien de la cohérence et de l’exactitude. La suppression de ces attributs vides peut être bénéfique pour optimiser le code et améliorer l'intégrité des données.

Présentation

Pour supprimer tous les attributs non définis ou nuls dans un objet JavaScript, vous pouvez utiliser les approches suivantes :

Itératif (Fonctionnel Style)

  1. ES10/ES2019 Exemple :

    let o = Object.fromEntries(Object.entries(obj).filter(([_, v]) => v != null));
    Copier après la connexion
  2. ES6/ES2015 Exemple :

    let o = Object.keys(obj)
      .filter((k) => obj[k] != null)
      .reduce((a, k) => ({ ...a, [k]: obj[k] }), {});
    Copier après la connexion

Itératif (style impératif)

  1. ES10/ES2019 Exemple :

    function removeEmpty(obj) {
      const newObj = {};
      Object.entries(obj).forEach(([k, v]) => {
        if (v === Object(v)) {
          newObj[k] = removeEmpty(v);
        } else if (v != null) {
          newObj[k] = obj[k];
        }
      });
      return newObj;
    }
    Copier après la connexion

Récursif

  1. ES10/ES2019 Exemple :

    function removeEmpty(obj) {
      return Object.fromEntries(
        Object.entries(obj)
          .filter(([_, v]) => v != null)
          .map(([k, v]) => [k, v === Object(v) ? removeEmpty(v) : v])
      );
    }
    Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal