Если кто-нибудь может сказать мне, пожалуйста, как я могу сделать из этой структуры плоского объекта:
mainObj = {
"Ob1": {
"id": 1,
"name": "Ob1",
"properties": {
"attName": "A1",
"attType": "string",
"attOccurance": "minOccurs="1""
},
},
"Ob2": {
"id": 101,
"name": "Ob2",
"properties": {
"attName": "B1",
"attType": "string",
"attOccurance": "minOccurs="1""
},
}
"Ob3": {
"id": 10001,
"name": "Ob3",
"properties": {
"attName": "C1",
"attType": "string",
"attOccurance": "minOccurs="1""
},
}
}
Для этого вложенного в другой объект, но с данными плоского:
myObj = {
"Ob1": {
"myObjName": "A1",
"myObjType": "string",
"myObjOcc": "minOccurs="1""
"Ob2": {
"myObjName": "B1",
"myObjType": "string",
"myObjOcc": "minOccurs="1""
"Ob3": {
"myObjName": "C1",
"myObjType": "string",
"myObjOcc": "minOccurs="1""
}
}
}
}
Логика вложенности такова: если идентификатор следующего объекта больше, чем предыдущий, то это дочерний объект.Это логика:
for each(var obj in mainObj){
switch (true) {
case obj.id < 100: levelId=1; break;
case obj.id < 10000: levelId=2; break;
case obj.id < 1000000: levelId=3; break;
case obj.id < 100000000: levelId=4; break;
}
}
У меня есть только это, но я не знаю, как их вложить:
for (key in mainObj) {
myObj.myObjName = mainObj[key].properties.attName,
myObj.myObjTyp = mainObj[key].properties.attType,
myObj.myObjOcc = mainObj[key].properties.attOccurance
}
Пожалуйста, если кто-нибудь может сказать мне, как я могу это сделать