Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Question: Comparing Distinct Arrays of Objects

Offen
#258 5 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
20/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
javascript
Bereich
backend

Rechercherichtung

Es ist kein Datei- oder Test-Einstiegspunkt angegeben. Beginne mit der Überprüfung der Regelbedingung und der Operatorregistrierung rund um die Auswertung von Array-Pfaden; verwende die beiden bereitgestellten Facts-Beispiele, um den Abschluss als Matching desselben Objekts zu definieren, das für das erste false und für das zweite true zurückgibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Hello,

I am trying to compare an array of objects to check for a specific set of objects to be present in any of them, but not across all of them, specifically lets take this rule:

const arrayRule = {
        conditions: {
            any: [
                {
                    all: [
                        {
                            fact: 'data',
                            path: '$.[*].equalityTest',
                            operator: 'equal',
                            value: 50,
                        },
                        {
                            fact: 'data',
                            path: '$.[*].anotherTest',
                            operator: 'equal',
                            value: 50,
                        },
                    ],
                },
            ],
        },
        event: {
            type: 'arrayRule',
        },
    };

This is the first iteration of the rule I came up with, it is incorrect, but I wanted to give an idea of what I am aiming for.

Specifically here, we have a rule where I want equalityTest to equal 50 and anotherTest to also equal 50. But I want them to equal those values in the same object, such that:
THIS SHOULD RETURN FALSE

 const facts = {
                data: [
                    {
                        anotherIntegerFact: 1,
                        equalityTest: 50,
                    },
                    {
                        anotherIntegerFact: 50,
                        equalityTest: 40,
                    },
                ],
            };

THIS SHOULD RETURN TRUE

 const facts = {
                data: [
                    {
                        anotherIntegerFact: 50,
                        equalityTest: 50,
                    },
                    {
                        anotherIntegerFact: 40,
                        equalityTest: 40,
                    },
                ],
            };

Would love any suggestions or ideas on a way to tackle this. One thought was I could write my own operator and add it to the registry of operators on our end, but before I did so, I wanted to validate that is needed.

Thanks

Vorherrschende Sprache
JavaScript
Sterne
3.1k
Forks
507
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus CacheControl/json-rules-engine

Alle Issues in CacheControl/json-rules-engine

Ähnliche Issues

Weitere Issues zu JavaScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.