【Javascript】处理数据

需求:根据x的值生成多少个数组
原数据:

[
    {
        "x": 0,
        "y": 0
    },
    {
        "x": 0,
        "y": 1
    },
    {
        "x": 1,
        "y": 0
    },
    {
        "x": 2,
        "y": 0
    }
]

结果数据:

[
    [
        {
            "x": 0,
            "y": 0
        },
        {
            "x": 0,
            "y": 1
        }
    ],
    [
        {
            "x": 1,
            "y": 0
        }
    ],
    [
        {
            "x": 2,
            "y": 0
        }
    ]
]
function handleData (data) {
    var map = new Map();
    var array = [];

    data.forEach(function (e) {
        var mapValue = map.get(e["x"]);
        if (mapValue == null) {
            mapValue = [];
        }
        mapValue.push(e);
        map.set(e["x"], mapValue);
    });

    map.forEach(function (value, key, map) {
        array.push(value);
    });

    return ayyay;
}

猜你喜欢

转载自blog.csdn.net/IT429/article/details/80494370