JavaScript – Ako rýchlo skontrolovať prvky medzi dvoma poľami (array)

JavaScript

V tomto článku demonštrujem ako rýchlo zistiť, či jedna množina prvkov obsahuje povolené prvky, ktoré sú definované v druhej množine prvkov.

V praxi môže ísť napríklad o kontrolu REST metódy PUT, kedy je pre aktualizáciu povolená len určitá skupina entít a tá sa testuje voči zaslaným údajom. Ak je v zaslaných dátach iná entita ako v množine povolených entít, operácia sa nevykoná a odošle sa chybová správa o nesprávnom zložení požiadavky.

V minulosti sme tento druh problému riešili cez cykly a indexOf(), no vďaka postupnému vývoju jazyka JavaScript je už možné podobné typy úloh vykonávať oveľa jednoduchšie.

Príklad s výsledkom true.

let user = {
    "name": "Peter",
    "age": "24",
    "occupation": "teacher"
};

let keys = Object.keys(user);
let allowedKeys = ["name", "age", "occupation", "username", "password"];

let result = keys.every(item => allowedKeys.includes(item));

console.log(result);

Príklad s výsledkom false.


let user = {
    "username": "Peter",
    "age": "24",
    "occupation": "teacher"
};

let keys = Object.keys(user);
let allowedKeys = ["name", "age", "occupation", "username", "password"];

let result = keys.every(item => allowedKeys.includes(item));

console.log(result);

V druhom príklade bola zaslaná entita/atribút/vlastnosť, ktorá nie je v množine povolených entít – pole s textovými prvkami. Namiesto entity name bola zaslaná entita username, a tak request nezodpovedá štruktúre, ktorá sa vyžaduje.

https://www.mldgroup.com

Vyštudovaný top manažér pôsobiaci najmä ako manažér, marketér, softvérový inžinier, konzultant, bloger, YouTuber a zatiaľ neúspešný hudobník a producent. V rámci praxe pôsobil v rôznych odvetviach na rôznych pozíciách v malých aj veľkých firmách, vrátane spoluprác a partnerstiev s významnými firmami či poradenskými spoločnosťami.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *