0
votes

Vérifiez si la chaîne contient le côlon ou sa chaîne vide?

C'est le résultat que j'essaie d'atteindre:

si le "règlementDesc" dans les messages a une chaîne sans ":" ou "", omettez cette entrée de messages. Si toutes les entrées sont omises dans les messages, supprimez la saisie des messages de la réponse des prix du médicament.

Dans le code ci-dessous, il s'agit d'une opération opposée, de toute idée de la mauvaise mise en œuvre?

main.js xxx

Ceci est la sortie que j'essaie d'obtenir: xxx


5 commentaires

La chose avec règlementdesc.indexof (":") est qu'il retournera 0 pour ":" , qui peut ne pas être ce que vous voulez . Cependant, votre premier élément de la matrice contient les caractères : et `` ``, donc je ne sais pas comment vous vous attendez à ce que ce soit le seul élément restant dans la matrice de résultat.


S'il est égal à "" ou ":" ou simplement si la chaîne a ":"?


@Jalil f the "règlementdesc" dans les messages, a une chaîne sans ":" besoin d'omettre cette entrée


Dans ce cas, vous devriez avoir 65 ans aussi, ai-je raison?


Oui seulement 85 devrait être omis


3 Réponses :


0
votes

Pas exactement sûr de ce que vous voulez, mais:

Un moyen de créer une chaîne dans un tableau ou de filtrer cela: P>

var myString = 'a b c';
console.log(myString.split(' '));


0 commentaires

0
votes

Essayer en utilisant Inclus au lieu de l'index de l'index de renvoie toujours un nombre.

p>

const messages = [
              {
                "settlementCode": "99",
                "settlementDesc": "Not Covered: Call beneficios."
            },
               {
                "settlementCode": "85",
                "settlementDesc": ""
            },
              {
                "settlementCode": "65",
                "settlementDesc": ":"
            }
            ];

    function validateEntries (messages) {
      if(!messages){ return [] };
      const filteredMsg = messages.filter(mesg => {
        if (checkString(mesg))  return mesg;
      } );

      return filteredMsg;
    };

    const checkString = (mesg) => {
      if (mesg.settlementDesc.includes(":")) {
        return true;
      } else {
        return false;
      }
    };


var output = validateEntries(messages);
console.log(output);


2 commentaires

Maintenant, tu peux l'exécuter et voir ceci veut que tu voulais.


Seulement 99 et 65 devraient être là à droite, vous pouvez consulter maintenant en exécutant le code ci-dessus.



0
votes

Vous pouvez filtrer votre liste de message et renvoyer uniquement ceux qui recherchent uniquement

 const messages = [
                  {
                    "settlementCode": "99",
                    "settlementDesc": "Not Covered: Call beneficios."
                },
                   {
                    "settlementCode": "85",
                    "settlementDesc": ""
                },
                  {
                    "settlementCode": "65",
                    "settlementDesc": ":"
                }
                ];

let filtered = messages.filter(item => item.settlementDesc.includes(":"))


4 commentaires

Ma logique est si String SettySesc a une chaîne sans ":" Alors omettez cette entrée, votre logique supprimera l'entrée si la chaîne contient ":" à droite


Si règlementdesc a une chaîne sans ":" Le message ne sera pas dans le nouveau tableau filtré


Maintenant, au-dessus du code renvoyant 85, il devrait renvoyer 99 et 65


OK, vous pouvez inverser la condition. Voir mon code mis à jour maintenant