¡Estoy tratando de acceder dinámicamente a una propiedad de objeto desde una matriz de cadenas (tienen la ruta del valor necesario)! parece que accede solo al primer índice (Propiedades) pero los otros están indefinidos. Espero que el resultado sea "ES_STUE".
let objPath = ["properties.Constraints.Level"]; const object = { properties: { Visibility: { "Tender Code": "", }, Data: { DTU_ClassificationNumber: "", DTU_InformationAccuracy: "", }, "Model Properties": { "Workset (Manual)": "No", }, Constraints: { Level: "ES_STUE", Host: "Level : ES_STUE", "Offset from Host": "0.000 mm", "Moves With Nearby Elements": "No", "Default Elevation": "0.000 mm", }, }, }; for (const iterator of objPath) { const keySigment = iterator.split("."); for (const prop of keySigment) { console.log(prop); const result = object[prop]; //const result = object["Properties"]["Constraints"]["level"] not sure if this is correct console.log(result); // the result should be "ES_STUE" } }Lógica
objPath .result con result[prop] donde prop es la clave. let objPath = ["properties.Constraints.Level"]; const object = { properties: { Visibility: { "Tender Code": "", }, Data: { DTU_ClassificationNumber: "", DTU_InformationAccuracy: "", }, "Model Properties": { "Workset (Manual)": "No", }, Constraints: { Level: "ES_STUE", Host: "Level : ES_STUE", "Offset from Host": "0.000 mm", "Moves With Nearby Elements": "No", "Default Elevation": "0.000 mm", }, }, }; for (const iterator of objPath) { const keySigment = iterator.split("."); let result = object; for (const prop of keySigment) { console.log(prop); result = result[prop]; console.log(result); // the result should be "ES_STUE" } }