如何过滤数组循环中的数据 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>');
之前我问过这个问题,(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>');