當嘗試對對象進行串處理時,存在遞歸問題。JSON.stringify() - 如何知道替換器中的當前深度
我想知道是否有人知道什麼是當迭代槽鍵 - >替換器中的值時的當前深度? 我想用它的ID替換引用,但只有當我處於特定深度時。
這裏是一個最低限度的目標,得到爲例:
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]
};
從obj獲得的,我需要在「linkedItems」屬性來替換每個引用,通過其ID。 我強硬的更簡單的方法是首先它字符串化... :)
編寫相關代碼..寫你嘗試 –
顯示輸入數據 – RomanPerekhrest
的「替代品」其實只是一個過濾機制,它不保持深度的計數在被串化的對象中。 – adeneo