J'ai une version JSON
d'un arbre DOM
et je veux garder que la différence entre les pages (remove pied de page nav ...)Gardez seule différence entre deux JSON
Exemple:
const a = {
id: '1',
child: [
{
id: '2',
child: [{id: '1'}, {id: '2'}]
},
{
id: '3',
child: [{id: '1'}, {id: '5'}]
}
]
};
Et
const b = {
id: '1',
child: [
{
id: '2',
child: [{id: '1'}, {id: '4'}]
},
{
id: '3',
child: [{id: '1'}, {id: '4'}]
}
]
};
Avec une fonction
diff(a, b)
Ce résultat
{
id: '1',
child: [
{
id: '2',
child: [{id: '2'}]
},
{
id: '3',
child: [{id: '5'}]
}
]
}
J'ai créé cette base de la fonction récursive
const diff = (a, b) => {
if (Array.isArray(a)) {
}
if (typeof a === 'object') {
// ...
extract(a.child, b.child);
}
}
Comment puis-je faire? Y a-t-il un paquet npm
? ou avec JSON
Chemin? Je veux créer une fonction qui supprime l'égalité 'parties' entre deux fichiers JSON
avec la sortie de la fonction ayant la même structure, mais sans la différence 'parts égales' seulement.
Ce n'est pas JSON. JSON est une * notation textuelle * pour l'échange de données. [(Plus ici.)] (Http://stackoverflow.com/a/2904181/157247) Si vous traitez avec du code source JavaScript, et non avec une * chaîne *, vous n'avez pas affaire à JSON. –