-1
votes

JavaScript pour supprimer un objet d'un tableau si un élément de l'objet contient une chaîne

J'ai un éventail d'objets tels que:

{
    "value": [
        {
            "attachment_text": "Support: hello there! I need some help syncing records",
            "ticket_text": "Ticket 1537 from ronburgundy@news.com"
        },
        {
            "attachment_text": "Copied from original request - 401 unathorized",
            "ticket_text": "Ticket 1459 from klaus.kinsky@kinsky.com"
        },
        {
            "attachment_text": "Contact request form received",
            "ticket_text": "Ticket 1173 from sophia@copolla.com"
        },
        {
            "attachment_text": "Hello, we need to troubleshoot some problems",
            "ticket_text": "Ticket 1591 from pat@pending.com"
        },
        {
            "attachment_text": "Contact request form received",
            "ticket_text": "Ticket 1483 from bugs@bunny.com"
        },
        {
            "attachment_text": "Contact request form received",
            "ticket_text": "Ticket 1393 from elmer@fudd.com"
        }
    ]
}


1 commentaires

Qu'est-ce que tu as essayé jusque-là? Simple .filter () ferait le tour


3 Réponses :


7
votes

Vous pouvez utiliser la méthode de filtrage d'objets de tableau dans JavaScript. J'ai créé une démo pour vous ci-dessous:

p>

var data = {
  "value": [{
      "attachment_text": "Support: hello there! I need some help syncing records",
      "ticket_text": "Ticket 1537 from ronburgundy@news.com"
    },
    {
      "attachment_text": "Copied from original request - 401 unathorized",
      "ticket_text": "Ticket 1459 from klaus.kinsky@kinsky.com"
    },
    {
      "attachment_text": "Contact request form received",
      "ticket_text": "Ticket 1173 from sophia@copolla.com"
    },
    {
      "attachment_text": "Hello, we need to troubleshoot some problems",
      "ticket_text": "Ticket 1591 from pat@pending.com"
    },
    {
      "attachment_text": "Contact request form received",
      "ticket_text": "Ticket 1483 from bugs@bunny.com"
    },
    {
      "attachment_text": "Contact request form received",
      "ticket_text": "Ticket 1393 from elmer@fudd.com"
    }
  ]
}

const result = data.value.filter((data) => !data["attachment_text"].includes("Contact request"))
console.log(result)


0 commentaires

0
votes

Utilisez

value.filter(x=>x.attachment_text.indexOf('Contact request') > -1);


0 commentaires

1
votes

Vous pouvez utiliser la méthode Filtre , qui conservera chaque élément dans lequel une condition spécifique donne des résultats true .
Dans votre cas, la condition peut être un simple Comprend une méthode pour vérifier la présence de la "Demande de contact" String. XXX


0 commentaires