var list = ['1-10','1-20','1-22','2-2','2-3','2-4','3-1','3-5','4-6','5-10'];
/*
如何将上面数组分成5组?
如:1-* 为第一组;
2-* 为第二组;
....
以此类推,求解
*/
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
题意里分组的共同点在于元素的第一个字符(应该说是连线符前的字符串)相同,所以可以用一个对象(其实就是类似字典的含义),把对应数据组合在一起放到同一个地方去。
lodash https://lodash.com/docs/4.17.4
const ret = _.groupBy(list, e => e.split('-')[0])