Ich habe Rekursivitätsproblem beim Versuch, ein Objekt zu stringifizieren.JSON.stringify() - wie aktuelle Tiefe in Ersetzer zu kennen ist
Ich frage mich, ob jemand einen Tipp hat zu wissen, was ist die aktuelle Tiefe beim Iterieren durch Schlüssel -> Wert im Ersetzer? Ich möchte eine Referenz durch ihre ID ersetzen, aber nur wenn ich in einer bestimmten Tiefe bin.
Hier ist ein minimalistisches Objekt ein exemple zu geben:
var a = {
id: 'idOfA',
linkedItems: []
};
var b = {
id: 'idOfB',
linkedItems: []
};
var c = {
id: 'idOfC',
linkedItems: []
};
a.linkedItems.push({
from: 0,
to: 0,
item: b
});
b.linkedItems.push({
from: 0,
to: 0,
item: a
}, {
from: 0,
to: 0,
item: c
});
c.linkedItems.push({
from: 0,
to: 0,
item: a
}, {
from: 0,
to: 0,
item: b
});
var obj = {
things: {},
otherThings: {},
items: [a, b, c]
};
Von obj, ich brauche jede Referenzen in der "linkedItems" Attribut zu ersetzen, durch ihre ID. ich hart, um die einfacheren Weg, es war zuerst zu stringify ... :)
entsprechenden Code schreiben .. schreiben Sie Ihren Versuch –
zeigen Sie Ihre Dateneingabe – RomanPerekhrest
Die „replacer“ wirklich nur ein Filtermechanismus ist, spielt es keine Zählung der Tiefe halten in dem Objekt, das beschriftet wird. – adeneo