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

how to filter data in array loop 222

之前我问过这个问题,(how to filter data in array loop) 但我的第二个数组有一些变化,..如下所示.. 在我的数组中是这样的,

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},....
]

先收集每个key,再收集数据。

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>');