React JS adalah library JavaScript yang biasa digunakan saat membangun UI suatu website atau aplikasi web. React JS merupakan sebuah pustaka JavaScript yang biasa digunakan pada situs web.
Keunggulan React JS adalah :
1. Declarative
React dapat membuat UI interaktif agar dapat memudahkan proses pembuatan desain sederhana di setiap state di dalam aplikasi. Declarative views juga dapat membuat sebuah kode agar mudah diprediksi dan lebih mudah untuk di-debug.
2. Component – Based
Fitur ini memungkinkan developer untuk membuat Encapsulated Component yang bisa mengendalikan setiap step kemudian membuat complex UIs atas dasar kemampuan tersebut.
3. Learn Once, Write Anywhere
Dapat mengembangkan fitur baru lebih mudah tanpa harus mengganti kode sebelumnya. React dapat bekerja menggunakan Node JS atau mobile apps dengan penggunaan React Native.
React JS memiliki fitur tambhhan yang merupakan keunggulannya yaitu :
1. JSX
JavaScript XML disingkat JSX merupakan sebuah perpanjangan dari JavaScript. JSX memungkinkan penggunaan HTML dalam JavaScript. Sama seperti XML atau HTML, JSX juga mempunyai elemen anak, atribut, dan tag.
2. React Native
Native Library milik React dirilis oleh Facebook sejak tahun 2015 lalu. Pada Native Library ini tersedia Arsitektur React, seperti Android, iOS, UPD pada Native Application-nya.
React Native merupakan kerangka yang digunakan dalam membangun sebuah aplikasi hanya dengan menggunakan JavaScript saja. Desain yang digunakan sangat mirip seperti layaknya React. Hal ini memungkinkan developer untuk membangun sebuah aplikasi UI library secara luas dan declarative component. Kelebihan utama dari React Native ini terdapat pada kode yang dapat digunakan tidak hanya dalam satu aplikasi saja, tetapi dua, seperti di dalam Android atau iOS. Jadi, block code yang dibuat cukup satu saja.
3. Single Way Data Flow
Pada React JS, sepaket nilai tetap, tanpa bisa diubah, akan diteruskan pada komponen renderer dengan bentuk properti dalam tag HTML. Komponen ini tidak bisa dimodifikasi oleh properti apapun secara langsung, tetapi bisa dilewati fungsi call back lewat bantuan modifikasi. Proses ini dikenal dengan nama “Properties Flow Down, Action Flow Up”.
4. Virtual Document Object (DOM)
Pada React, diciptakan sebuah struktur cache data di dalam memori untuk menghitung berapa banyak perubahan dibuat, untuk selanjutnya diperbarui oleh browser.
5. State dan Lifecycle
State merupakan asal sebuah data. Setiap komponen di dalam React memerlukan data, walaupun tidak semua. Data ini bisa berasal dari berbagai macam sumber, dan state menjadi salah satu sumber dari data-data tersebut. Data juga dapat berasal dari komponen yang berasa dari props, tetapi bukan properti.