如果我有一個數組數組,每個數組都包含對象屬性名稱(字符串),如何遞歸地修改對象以檢查屬性是否存在並相應地添加它。數組中的最後一個值將作爲給定屬性的字符串值應用。遞歸添加對象屬性
const propsToAdd = [
['propA', 'value'],
['propB', 'propC', 'propD', 'value'],
['propB', 'propF', 'value']
];
生成的對象將包含相關屬性(相應嵌套),最終屬性的值將等於數組中的最後一項。
const resultingObj = {
propA: 'value',
propB: {
propC: {
propD: 'value'
}
propF: 'value'
}
};
我想遞歸創建這樣一個對象,作爲該陣列將是未知的長度,如將子陣列。
重要的是要注意,以下將不會發生並且不需要適應。
const propsToAdd = [
['propA', 'value'],
['propA', 'value', 'value1']
];
把否則,value
(爲propA
孩子)不能同時爲一個屬性和值名稱。
我該如何編寫一個遞歸函數,將鍵/值對添加(並嵌套)到對象?
是有限制親的名單的深度perties? – abigwonderful
不,沒有。 – Himmel
數值是否在這裏?或字符串「值」@Himmel – Ayan