Berkenalan dengan Babel JS - Koding dengan Next Generation Syntax di Javascript

Javascript adalah salah satu bahasa pemrograman dengan perkembangan yang paling pesat. Berbagai macam fitur dan sintaks diperkenalkan di ES6. Bahkan ES7 sudah masuk dalam tahap rancangan. Namun perkembangan tadi ternyata membutuhkan waktu yang cukup lama untuk dapat diadaptasi baik oleh browser maupun NodeJS. FYI, kita dapat melihat kompatibilitas ES6 di https://kangax.github.io/compat-table/es6/ (browser) dan http://node.green/ (NodeJS).


Lalu apakah kita harus menunggu sampai fitur atau sintaks baru tersebut disupport secara resmi ? Misal perhatikan kode dibawah ini :


Mari kita coba jalankan


Hmm… ternyata kode di atas tidak berjalan sesuai dengan yang diharapkan. Untuk membuktikan apakah benar error di atas terjadi murni karena sintaks yang belum di-support, maka mari kita coba untuk me-rewrite kode di atas tanpa menggunakan import dan async-await. Note: percobaan ini menggunakan node versi 6.10 LTS.\


Dan hasilnya, tidak ada error dan file “hello.txt” berhasil di-generate.




Tapi, mari kita coba bandingkan kode import.js dengan no-import.js. Kira-kira dari segi penulisan dan kerapihan mana yang akan kita pilih ? Saya pribadi memilih yang pertama karena kodenya lebih pendek dan bersih. Namun sekali lagi apakah kita harus menunggu sintaks tersebut di-support agar dapat menuliskan kode yang lebih pendek dan bersih tadi ?


Babel Sang Penyelamat


Ternyata sudah ada solusi dari permasalahan ini, yaitu dengan menggunakan BABEL. Sesuai dengan tagline-nya “Use next generation Javascript, today.” Kita benar-benar dapat menggunakan fitur dan sintaks terbaru sehingga tidak stuck dengan sintaks yang lama. Hal ini disebabkan karena babel itu sendiri adalah sebuah transpiler, yang tugasnya menterjemahkan sintaks-sintaks yang unsupported ke sintaks yang di-support oleh browser atau NodeJS.


Komentar