繁体   English   中英

如何在对象 Javascript 中制作数组列表 [重复]

[英]How to make Array List inside Object Javascript [duplicate]

我有来自 DB 的结果集

{
    "scrapped_name": [
        "harry mccracken"
    ],
    "publications": [
        {
            "_id": "5d3021a6eedfed29a7b5ae75",
            "name": "Fast Company"
        },
        {
            "_id": "5d3021a6eedfed1728b5ae7c",
            "name": null
        }
    ],
    "language": [],
    "location": [],
    "_id": "5d3021a6eedfed37d3b5ae88",
    "name": "harry mccracken",
    "createdAt": "2019-07-18T07:37:10.626Z",
    "updatedAt": "2019-07-18T07:37:10.626Z",
    "social_media": []
}

1)我需要对结果数据集执行一些活动,然后我需要使结果集与上述相同,但这次我需要手动制作。在对象内部制作发布数组时遇到问题。 2)有人可以帮助我在我的结果集中推送新的键值。 就像我现在从数据库查询中获得了上述结果一样,我想推送新密钥,例如:

publisher : true

所以我在第二个问题中想要的结果数组是:

{
    "scrapped_name": [
        "harry mccracken"
    ],
    "publications": [
        {
            "_id": "5d3021a6eedfed29a7b5ae75",
            "is_followed": true,
            "name": "Fast Company"
        },
        {
            "_id": "5d3021a6eedfed1728b5ae7c",
            "is_followed": false,
            "name": null
        }
    ],
    "language": [],
    "location": [],
    "_id": "5d3021a6eedfed37d3b5ae88",
    "name": "harry mccracken",
    "createdAt": "2019-07-18T07:37:10.626Z",
    "updatedAt": "2019-07-18T07:37:10.626Z",
    "social_media": [],
    "publisher": true
}

以上是在运行时从其他表动态计算出来的。

 const object = { scrapped_name: [ 'harry mccracken', ], publications: [ { _id: '5d3021a6eedfed29a7b5ae75', name: 'Fast Company', }, { _id: '5d3021a6eedfed1728b5ae7c', name: null, }, ], language: [], location: [], _id: '5d3021a6eedfed37d3b5ae88', name: 'harry mccracken', createdAt: '2019-07-18T07:37:10.626Z', updatedAt: '2019-07-18T07:37:10.626Z', social_media: [], }; object.publisher = true; // Added a key `publisher` // Customise `publications` array if (object.publications && Array.isArray(object.publications)) { object.publications.forEach((f) => { const referenceObj = f; let hasFollow = false; if (f._id && f._id === '5d3021a6eedfed29a7b5ae75') { hasFollow = true; } referenceObj.is_followed = hasFollow; }); } console.log(object);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM