var a = [{
color: 'red',
size: 'A'
},{
color: 'black',
size: 'B'
},{
color: 'white',
size: 'C'
},{
color: 'red',
size: 'C'
},{
color: 'white',
size: 'B'
},{
color: 'black',
size: 'C'
}]
最终想得到的结果为
var a = [{
color: 'red',
size: 'A'
},{
color: 'red',
size: 'C`'
},{
color: 'black',
size: 'B'
},{
color: 'black',
size: 'C'
},{
color: 'white',
size: 'C'
},{
color: 'white',
size: 'B'
}]
即红色的排在一起,黑色的排在一起,白色的排在一起。同时这些颜色的值会有很多,需要写一个公共的方法,把数组里面的相同颜色的元素排放在一起,怎样做?
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
楼上的思路是正确的。但如果你一定要按照先 "red" 然后 "black" 再 "white" 的顺序来排,可以这样:
这样你就可以得到先 "red",然后 "black", 然后 "white" 的顺序,并且每个组的 "size" 也是按照字母顺序排好的
如果你不喜欢写死,或者
color有多少种是不确定的,那你也可以这样写,把不重复的color值按出现顺序提取出来: