Menggunakan Lodash Untuk Menggabungkan Nilai Array Berdasarkan 'key' Field

Dengan menggunakan lodash maka 2 array yang berisi object dapat digabungkan dan dikelompokkan berdasarkan field ID. Berikut adalah contoh dari penggunaan lodash:

var guru=[{id: '1', nama: 'budi'}, {id:'2', nama: 'shinta'}]  
var mengajar=[{id:'1', mengajar: 'matematika'}, {id:'2', mengajar: 'biologi'}]  
var gabungan = _.toArray(_.groupBy(_.concat(data2, data), 'id'))  

array yang dihasilkan adalah sebagai berikut:

var gabungan  = [[{id: '1', nama: 'budi'}, {id:'1', mengajar: 'matematika'}], [{id:'2', nama: 'shinta'}, id:'2', mengajar: 'biologi'}]]  

variabel gabungan sekarang menjadi array dengan isi dua buah array yang didalamnya merupakan kumpulan object yang mempunyai id yang sama. Fungsi lodash yang digunakan adalah _.concat yang berfungsi untuk menggabungkan 2 array, _.groupBy yang berfungsi untuk mengumpulkan objek berdasarkan 'key' field yang ditentukan sendiri, dalam kasus ini adalah field 'id'. Sedangkan _.toArray berfungsi untuk membuat hasil data gabungan menjadi array.

Teknik ini dapat digunakan dalam node.js dan angular untuk menggabungkan dua collection dari mongo database ke dalam satu variable. Variable gabungan tersebut dapat dipanggil oleh angular, bahkan data collection yang dipanggil dari mongo dapat diminimalisir lagi untuk mengurangi waktu muat halaman web dengan menggunakan projection, sehingga kita bisa menseleksi field apa saja yang perlu dipanggil untuk digabungkan dengan menggunakan lodash.

Geri Muhano

Web programmer di erabelajar.com. Alumni UIN Jakarta.