javascript - 保留 json 对象数组的选定成员

标签 javascript arrays json

我想保留 JSON 对象数组的选定成员。我有下面的 JSON 数组;

[
    {
        XXX: "2",
        YYY: "3",
        ZZZ: "4"
    },
    {
        XXX: "5",
        YYY: "6",
        ZZZ: "7"
    },
    {
        XXX: "1",
        YYY: "2",
        ZZZ: "3"
    }
]

我想保留 XXX 和 ZZZ 成员,以便新的 json 数组如下所示;

[
    {
        XXX: "2",       
        ZZZ: "4"
    },
    {
        XXX: "5",       
        ZZZ: "7"
    },
    {
        XXX: "1",       
        ZZZ: "3"
    }
]

执行此操作的一种方法是使用下面的删除方法删除 YYY 成员。

for(var i = 0; i < jsonArr.length; i++) {
    delete jsonArry[i]['YYY'];
}

但是,我更希望有一个保留成员的功能,而不是删除成员的功能。像 RetainMembers(JsonArr, 'XXX', 'ZZZ') 这样的东西会返回新的 json 数组。这如何在 JavaScript 中完成?谢谢。

最佳答案

我使用 native map 函数来解决此类问题。

var actual = data.map(function (obj) {
   var newObj = {};
   newObj['XXX'] = obj['XXX'];
   newObj['ZZZ'] = obj['ZZZ'];
   return newObj;
});

我可以像你那样做,但我不喜欢改变实际元素。最好返回一个新对象。

关于javascript - 保留 json 对象数组的选定成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24771098/

相关文章:

javascript - 使用 jQuery 查找 Dom Tree 中先前出现的类

javascript - 自动递增序列 Mongoose

javascript - 如何在我的 javascript 代码中生成随机数?

javascript - 如何通过 Javascript 发送 whatsapp 消息

python - 如何 reshape 列表数组?

c++ - 一行中的最后一个数组元素和下一行中具有相同指针的第一个元素

mysql - 将每个 td 的数组数据插入 mysql 数据库

javascript - 修改ajax请求中的全局变量

java - 如何使用迭代器 java 将 JSONObject 转换为新 Map 的所有键

javascript - facebook graph api ajax XMLHttpRequest - 空结果?