我有一個如下的陣列:
let array1 = [ {"id":"A", "serial":"C"}, {"id":"A", "serial":"E"}, {"id":"A", "serial":"B"}, {"id":"A", "serial":"B"}, {"id":"B", "serial":"A"}, {"id":"B", "serial":"C"}, {"id":"C", "serial":"B"}, {"id":"C", "serial":"F"} ]
我想按照相同的id-serial對進行重新分組。 {"id":"X", "serial":"Y"} 和 {"id":"Y", "serial":"X"} 應視為相同的對。
預期的結果如下:
let res = [ [{"id":"A", "serial":"C"}], [{"id":"A", "serial":"E"}], [{"id":"A", "serial":"B"},{"id":"A", "serial":"B"},{"id":"B", "serial":"A"}], [{"id":"B", "serial":"C"},{"id":"C", "serial":"B"}], [{"id":"C", "serial":"F"}] ]
我該如何實現這個?
無法想到更好的方法來做這個。一種方法是按照唯一鍵進行分組。在這裡,唯一鍵將是
A|B
,對於兩個組合{"id":"A", "serial":"B"}
和{"id ":"A", "serial":"B"}