Kalau kamu pernah ngoprek data kendaraan, entah dari sensor speedometer, GPS, atau engine telemetry, pasti tahu deh bagaimana data itu berlimpah dan butuh diolah. Di dunia otomotif modern, data dari kendaraan jadi bahan bakar utama buat diagnosa, optimasi performa, sampai prediksi servis. Nah, di seri ke-13 JavaScript Algorithm Series ini, kita bahas tiga senjata utama buat ngolah data di JavaScript: map, filter, dan reduce, lewat contoh aplikasi pada data telemetry kendaraan.
Data Kendaraan: Asal Usul Telemetry Otomotif
Bayangin di dashboard motor atau mobil kamu, berderet data masuk dari sensor: kecepatan, temperatur mesin, hingga tingkat konsumsi BBM. Data itu biasanya dikirim terus-menerus dan butuh diproses supaya informatif. Misalnya, kita mau ambil informasi kecepatan di tiap detik, atau cuma yang lebih dari 80 km/jam sebagai indikator over-speeding.
Data semacam ini pas banget diolah dengan algoritma yang sederhana tapi powerful seperti map, filter, dan reduce. Mereka memudahkan mengubah, menyaring, atau meringkas data dalam satu garis komando. Mirip kayak kamu modif ECU, tapi ini modifikasi data biar lebih mudah dipahami.
Terminologi: map, filter, reduce dalam Olah Data
Ketiga algoritma ini adalah metode dasar mengolah array di JavaScript, yang kalau diibaratkan dunia garasi, mereka adalah alat mekanik yang berbeda fungsi:
– **map** adalah tukang cat yang mengubah tampilan tiap elemen, misalnya mengubah km menjadi mil.
– **filter** adalah penjaga pintu yang hanya membiarkan data memenuhi kriteria tertentu lewat, misal hanya kecepatan di atas 60 km/jam.
– **reduce** adalah si mandor yang mengumpulkan tujuan akhir dari data, misalnya total jarak tempuh.
Pakai ketiganya secara tepat bikin kode jadi ringkas dan performa tetap mantap.
Contoh Kode JavaScript: Transformasi Data Telemetry
Yuk kita praktek langsung olah data kecepatan kendaraan yang di-tracking dalam array kecepatan setiap detik. Kita pakai ketiga fungsi ini buat:
1. Konversi km/h ke m/s (map)
2. Filter kecepatan di atas ambang batas (filter)
3. Hitung total jarak tempuh (reduce)
// Data kecepatan dalam km/jam yang diambil setiap detik
const speedData = [60, 75, 82, 90, 45, 70, 88];
// Konversi km/jam ke m/s
const speedInMetersPerSecond = speedData.map(speedKmh => (speedKmh * 1000) / 3600);
console.log('Kecepatan dalam m/s:', speedInMetersPerSecond);
Lanjut, kita filter kecepatan yang lebih dari 80 km/jam, tanda si driver over-speeding.
// Filter kecepatan di atas 80 km/jam
const overSpeeding = speedData.filter(speedKmh => speedKmh > 80);
console.log('Kecepatan over-speeding:', overSpeeding);
Akhirnya, kita hitung total jarak dengan asumsi setiap data mewakili selang waktu 1 detik. Jadi jarak tiap segmen = kecepatan (m/s) * 1 detik.
// Hitung total jarak tempuh dalam meter
const totalDistance = speedInMetersPerSecond.reduce((accum, speed) => accum + speed, 0);
console.log('Total jarak tempuh (meter):', totalDistance.toFixed(2));
Kamu bisa gabungkan semuanya supaya jadi satu alur produksi data dari kendaraan yang real-time.
Masa Depan: Dari Garasi ke Algoritma
Ngulik data kendaraan bukan cuma soal mesin dan baut, tapi juga algoritma dan kode yang bikin data itu bermakna. Dengan map, filter, dan reduce, proses modifikasi data jadi setara dengan modifikasi performa mobil: efisien, terstruktur, dan bisa diandalkan. Ke depan, di Indonesia 2025, tren connected car dan IoT bakal makin ngebut, bikin skill olah data ini makin penting buat para enthusiast otomotif yang pengen main di level digital.
Jadi, sambil otak-atik mobil di garasi, coba deh upgrade skill ngoding kamu dengan algoritma ini. Bisa mulai dari telemetry kendaraan sederhana sampai bikin dashboard performa real-time, semua mungkin dengan JavaScript dan algoritma yang pas.
Kalau kamu pengen belajar lebih lanjut, jangan lupa subscribe Otokreasi.com dan ikuti terus seri algoritma JavaScript lainnya. Bisa juga share pengalaman kamu soal modifikasi data kendaraan di kolom komentar, biar kita ngebahas bareng-bareng!





