如何在数组循环 222 中过滤数据

how to filter data in array loop 222

本文关键字:过滤 数据 循环 数组      更新时间:2023-09-26

>之前我问过这个问题,(如何在数组循环中过滤数据),但我的第二个数组有一些变化,..如下所示。在我的数组中是这样的,

var myColumnDefs = [
    {a: "hh", b: "hh", c: "jk", d: "ggh", e: "hvh"},
    {a: "dd", b: "gg", d: "nn", e: "rr", f: "jj"},.....
]

我想过滤数据并在新数组中插入数据,如下所示

var newarray = {a,b,c,d,e,f}

和另一个阵列

var mysecondarray = [
  {hh,hhjk,ggh,hvh,null},
  {dd,gg,null,nm,rr,jj},....
]

首先收集每个密钥,然后收集数据。

var myColumnDefs = [{ a: "hh", c: "jk", d: "ggh", e: "hvh" }, { a: "dd", b: "gg", d: "nn", e: "rr", f: "jj" }],
    result = function (array) {
        var r = { keys: [], data: [] }, o = {};
        array.forEach(function (a) {
            Object.keys(a).forEach(function (k) {
                if (!(k in o)) {
                    o[k] = r.keys.push(k) - 1;
                }
            });
        });
        r.keys.sort(); // sort all keys
        array.forEach(function (a) {
            r.data.push(r.keys.map(function (k) {
                return a[k];
            }));
        });
        return r;
    }(myColumnDefs);
document.write('<pre>' + JSON.stringify(result, 0, 4) + '</pre>');