JavaScript – How to compare nested arrays

JavaScript

JavaScript is a high-level, dynamic, and interpreted programming language that is commonly used in web development. It allows developers to create interactive elements and dynamic effects on web pages.

Use JSON.stringify() to compare arrays.

Full example

const set1 = [
    1,
    { data: [1, 2, 3], demo: { arr: [1, 2, 3] } },
    { data: "test" },
];
const set2 = [
    1,
    { data: [1, 2, 3], demo: { arr: [1, 2, 3] } },
    { data: "test" },
];
const set3 = [
    1,
    { data: [1, 2, 3], demo: { arr: [1, 2, 3] } },
    { data: "test1" },
];
const set4 = [
    1,
    { data: [1, 2, 3], demo: { arr: [1, 2, 3, 4] } },
    { data: "test" },
];

const set5 = [1, 2, [1, 2, 3]];
const set6 = [1, 2, [1, 2, 3]];
const set7 = [1, 2, [1, 2, 4]];

function compareArrays(oldData, newData) {
    oldData = JSON.stringify(oldData);
    newData = JSON.stringify(newData);

    if (oldData !== newData) {
        console.log("new data");
    } else {
        console.log("no change");
    }
    console.log("=========================");
}

compareArrays(set1, set1);
compareArrays(set1, set2);
compareArrays(set1, set3);
compareArrays(set1, set4);
compareArrays(set3, set4);
compareArrays(set4, set4);
compareArrays(set5, set6);
compareArrays(set6, set7);

Output

no change
=========================
no change
=========================
new data
=========================
new data
=========================
new data
=========================
no change
=========================
no change
=========================
new data
=========================
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é *