JS 二维数组拼接问题。由于想要加入自定义判断 想要拆分成单个数组然后拼接 该怎么操作

原数组

var type_list = 
        [
        {
        "type": "A",
        "data": [{
            //标记判断
            "name": "Customer Warning",
            "field": "customer_warn"
        },{
            "name": "Accident drilling",
            "field": "accident_drilling"
        }]
        }

        , 

        {
        "type": "B",
        "data": [{
            "name": "Customer Warning",
            "field": "customer_warn"
        },{
            "name": "Remote Access",
            "field": "remote_access"
        }]
        }


       ];
     由于想要加入自定义判断 符合条件的才创建子元素 所以想要拆分成单个数组然后拼接 该怎么操作。 主要是 有type data这种该怎么操作?
    拼接data部分 这种带属性的  data[]->typelist[]
type_list.push.apply(type_list,type_list2);
var type_list2 = [];


    就是希望能够

["type:"A","data:["1","2","3"]],["type:"B","data:["1","2","3"]],["type:"C","data:["1","2","3"]]

把这样的数组 拆分 用拼接的方式实现 目的是实现自定义data部分

{"type:"A","data:["1","2","3"]"} 和 {"type:"A","data:["4","5","6"]"}

如何拼接成

{"type:"A","data:["1","2","3",4","5","6"]"}

以及

{"type:"A","data:["1","2","3",4","5","6"]"} {"type:"B","data:["1","2","3",4","5","6"]"}

再拼接成

{["type:"A","data:["1","2","3",4","5","6"]"],["type:"B","data:["1","2","3",4","5","6"]"]}

typearr = type_list.map(function(x) { return x.type; });
dataarr = type_list.map(function(x) { return x.data; });

合并
function zip(arrays) { return Array.apply(null,Array(arrays[0].length)).map(function(_,i){ return arrays.map(function(array){return array[i]}) });}
type_list1 = zip(typearr,dataarr);

用json.stringify不行吗?