Jawaban Soal Form & CRUD JavaScript
1. Perbedaan GET dan POST:
GET mengirim data melalui URL sehingga terlihat di address bar dan memiliki batas
panjang karakter. POST mengirim data melalui body request, tidak terlihat di URL, lebih
aman, dan dapat mengirim data lebih besar.
2. Sebaiknya menggunakan POST saat mengirim data sensitif atau data besar. Contoh: login
(email & password), upload file, form pendaftaran.
3. Jika atribut 'name' tidak ditambahkan, data input tidak akan terkirim karena 'name'
berfungsi sebagai key dari data form.
4. Fungsi atribut pada <form>:
- action: menentukan URL tujuan pengiriman data.
- method: menentukan metode pengiriman data (GET atau POST).
5. Validasi backend tetap perlu karena validasi frontend bisa dimanipulasi atau
dinonaktifkan. Backend menjaga keamanan dan integritas data.
6. Contoh validasi:
- Email: harus memiliki format yang benar (mengandung @ dan domain).
- Password: minimal 8 karakter dan kombinasi huruf serta angka.
7. onsubmit adalah event yang dijalankan saat form akan dikirim. Fungsinya untuk
menjalankan validasi atau proses tertentu sebelum data dikirim.
8. preventDefault() berfungsi untuk mencegah form melakukan submit atau reload otomatis
agar dapat diproses dengan JavaScript terlebih dahulu.
9. Data awal CRUD JavaScript biasanya diambil dari array JavaScript atau dari localStorage.
10. Perbedaan:
- Array biasa menyimpan satu jenis data.
- Array of object menyimpan data kompleks seperti id, nama, email, dll.
11. Setiap data perlu id unik agar mudah dibedakan saat proses edit atau delete.
12. Data yang akan diedit ditentukan berdasarkan id, lalu dicari menggunakan find() atau
findIndex().
13. Tombol Reset berfungsi mengembalikan form ke kondisi awal atau mengosongkan
input.
14. Jika tidak ada validasi, data bisa salah format dan menyebabkan error atau data tidak
valid tersimpan.
15. localStorage berfungsi menyimpan data di browser agar tetap ada meskipun halaman
direfresh.
16. Perbedaan:
- localStorage: data tersimpan permanen sampai dihapus.
- sessionStorage: data hilang saat tab atau browser ditutup.
17. Data di variabel JavaScript hilang saat refresh karena hanya tersimpan sementara di
memori (RAM).
18. Cara menampilkan data dari localStorage:
Ambil dengan [Link](), ubah ke object dengan [Link](), lalu tampilkan ke
tabel menggunakan DOM.
19. Langkah fitur Delete:
- Ambil id data
- Hapus dari array
- Update localStorage
- Render ulang tabel
20. Keterbatasan CRUD tanpa database:
- Data hanya tersimpan di browser
- Tidak bisa diakses banyak user
- Kurang aman
- Tidak cocok untuk aplikasi besar