0

我的对象结构如下:

{
    Name: "Test",
    OperationProperties.Prop1: "Val1",
    OperationProperties.Prop2: "Val2",
    OperationProperties.Prop3: "Val3"
}

但我需要将其表示为:

{
    Name: "Test",
    OperationProperties: {
                            Prop1: "Val1",
                            Prop2: "Val2",
                            Prop3: "Val3"
                         }
}

请告诉我,除了执行手动转换之外,还有其他方法吗?

4

1 回答 1

0

除了编写代码手动执行此转换外,我没有找到任何方法。

function cast(source, prefix) {
    var result = {};

    for (var property in source){
        if(property.startsWith(prefix)){
            var propertyNameWithoutPrefix = property.replace(prefix + '.');
            result[prefix][propertyNameWithoutPrefix] = source[property];
        }else {
            result[property] = source[property]
        }
    }

    return result;
}
于 2013-10-11T22:08:58.607 回答