如何从JavaScript中的另一个对象创建自定义对象

Abhijeet1234

我正在尝试从另一个对象创建自定义对象,但是我想使其动态化。我有一个对象如下

{
    docType: "Produce",
    PRODUCEID: "PRFAINAPCH0005",
    PRODUCE: "Sweetcorn",
    PRODUCEQUANTITES: [{
        name: "Madhuri",
        qty: 4000
    }],
    FARMLOCATION: "Plot 56",
    PLANTINGDATE: "2020-10-01T04:00:00.000Z",
    GAPINFO: {},
    FARMERID: "FAINAPCH0001",
    STATUS: "Approved",
    BASE_UNIT: "kg",
    SELECTED_UNIT: {
        NAME: "kg"
    },
} 

我想要制作另一个如下的对象

{
  BussinessData: {
    PRODUCEQUANTITES: [{
      name: "Madhuri",
      qty: 4000
    }],
    FARMLOCATION: "Plot 56",
    GAPINFO: {},
    PLANTINGDATE: "2020-10-01T04:00:00.000Z",
    BASE_UNIT: "kg",
    SELECTED_UNIT: {
      NAME: "kg"
    },
    FARMERID: "FAINAPCH0001"
  },
  PRID: "PRFAINAPCH0005",
  docType: "Produce",
  PRODUCE: "Sweetcorn",
  STATUS: "Approved"
}

在该对象中,除“ PRODUCEID”,“ PRODUCE”,“ docType”和“ STATUS”外,所有属性都将进入“ BussinessData”属性内,该属性是主对象内的对象。

我尝试使用下面的代码,因为这是使代码为静态代码,所以我想使其动态化,因为除“ PRODUCEID”,“ PRODUCE”,“ docType”和“ STATUS”之外,所有属性都放在“ BussinessData”中属性。提前致谢。

var myparam = {
    "BussinessData": {}
};
myparam.PRID = param.PRODUCEID
myparam.docType = param.docType
myparam.PRODUCE = param.PRODUCE
myparam.STATUS = param.STATUS
myparam.BussinessData.PRODUCEQUANTITES = param.PRODUCEQUANTITES
myparam.BussinessData.FARMLOCATION = param.FARMLOCATION
myparam.BussinessData.GAPINFO = param.GAPINFO
myparam.BussinessData.PLANTINGDATE = param.PLANTINGDATE
myparam.BussinessData.BASE_UNIT = param.BASE_UNIT
myparam.BussinessData.SELECTED_UNIT = param.SELECTED_UNIT
myparam.BussinessData.FARMERID = param.FARMERID

console.log("myparam", myparam);
Aplet123

创建一个包含特殊属性的映射对象,然后循环遍历键:

function convertObject(obj) {
    const mappings = {
        PRODUCEID: "PRID",
        docType: "docType",
        PRODUCE: "PRODUCE",
        STATUS: "STATUS"
    };
    const ret = {BusinessData: {}};
    for (const key in obj) {
        if (key in mappings) {
            ret[mappings[key]] = obj[key];
        } else {
            ret.BusinessData[key] = obj[key];
        }
    }
    return ret;
}

这利用了for...in循环。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

创建另一个Java时将替换自定义对象的实例

在另一个对象中创建复杂/嵌套JavaScript对象的正确方法

如何在JavaScript中的另一个对象内添加一个对象?

如何在JavaScript中从具有相同定义的另一个对象向对象属性添加值

Unity-如何创建自定义编辑器以动态更改另一个具有自定义大小的列表中列表的大小?

如何从特定的另一个对象创建对象

在另一个对象中动态创建对象

通过拖放将自定义元素的对象引用传递给另一个自定义元素

Javascript:在JavaScript中从另一个对象创建一个深度嵌套的对象

如何在另一个组列表(groupby)中实现组列表。是否可以在dart自定义对象中使用多个哈希码和operator ==

我如何做一个我类的对象数组(继承另一个自定义类)?

如何保存自定义类对象并将其转移到另一个活动

在另一个对象中创建的模拟对象

提琴手中的POST请求:发送具有另一个对象作为成员的自定义对象

SalesForce-来自另一个自定义对象的总和记录

将自定义对象传递给另一个片段

在将自定义对象返回到m流中时,我在做什么错?如何返回另一个another流可以消耗的对象?

将自定义对象数组传递给android中的另一个Activity

是否可以在自定义View类中创建另一个控件?

将自定义列表对象复制到另一个列表对象

使用Guava集合将自定义对象列表转换/过滤到另一个对象

JavaScript从另一个文件中创建自定义对象以进行测试

无法从另一个类访问我的自定义视图对象

根据另一个自定义数组对数组中的对象属性进行排序

如何从另一个没有未定义属性的对象创建对象

如何遍历包含子对象的对象列表并创建另一个自定义对象?

如何通过将一个自定义对象与该序列中的另一个进行比较来创建两个序列?

自定义 TypeConverter 接收一些对象并将它们转换为另一个对象

如何创建自定义后缀规则以使用另一个目录中的标题?